반응형

생성자 6

[Java] Class

Class 자료와 자료를 처리하는 기능이 모여있는 사용자 정의형 데이터 타입 * Class = Data + Method Data : 프로그램에서 유지, 관리해야할 데이터, Attribute라고도 함 Method : Data를 조작하는 함수. Static Memory에 할당을 전역영역에 하기 위한 Keyword. 전역영역 할당의 의미 전역 접근이 가능해 Application이 종료할 때 까지 존재. Heap, Stack Memory 영역과 관련이 없음. 접근할 때 Class명 만을 이용. Class Variable Static을 이용하여 선언된 Attribute 전역영역에 위치 Class의 instance와 전혀 상관이 없음. 접근시 Class명 이용. Class Method Static으로 선언한 Met..

JAVA 2022.06.02

[Java] Comment(주석), 클래스(class), 생성자, 정보은닉

Comment(주석) 제작한 주석을 그대로 코딩한다. O 소스 코드를 주석한다. X = 주석 밑으로 코딩하라. = 코드 밑에 주석을 달지 마라. ▶ Refactoring : 결과의 변경 없이 코드의 구조를 재조정하는 활동. ex) 배열 sc를 for문의 length로 넣는것. Class ▶ 자료와 자료를 처리하는 기능이 모여있는 객체를 기반으로 하는 사용자 정의형 데이터 타입. 객체지향 프로그래밍은 구조적 프로그래밍에서 데이터와 기능을 합침으로서 class가 발전된 형태이다. data + 기능 = object object를 Language 차원에서 데이터 타입으로 구현한것이 class다. SP -> OOP ※ 객체지향프로그래밍의 오브젝트와 자바에서 말하는 오브젝트는 다른 것이다. ​ 구조적 프로그래밍의 ..

JAVA 2022.05.31

[JavaScript] Class(클래스), private(접근제어)

Class (클래스) 개념 ES5에서는 클래스가 없으며 객체형, 클로저, 생성자, 프로토타입 등을 이용해 클래스와 유사한 구조를 만들어 사용한다. ES5와 다르게 ES6에서는 클래스 문법을 직접적으로 지원함. 내부적으로 Class는 격국 object형과 같다. 형식 선언과 인스턴스 생성 클래스의 생성자 constructor로 생성자를 호출한다. ES6때 출현. class cs { constructor(){} } this를 통해 object에 변수를 등록한다. (object와 유사함.) * 생성자에 객체를 추가할 시 Shallow Copy(얕은 복사)에 주의한다. * Shallow copy(얕은 복사) 해결. (private 하단 참조) Method 추가 class의 method로 추가 readabilit..

JavaScript 2022.04.20

[JavaScript] Constructor 예제

예제1 원의 넓이와 둘레를 구하는 circle이라는 생성자를 만드시오. * TIP 기본값 매개변수 기본값 함수 매개변수 (default function parameter)를 사용하면 값이 없거나 undefined가 전달될 경우 이름붙은 매개변수를 기본값으로 초기화할 수 있습니다. function multiply(a, b = 1) { return a * b; } console.log(multiply(5, 2)); // expected output: 10 console.log(multiply(5)); // expected output: 5 답) 예제1+ 일반 함수 호출과 생성자 호출이 가능한 원의 넓이와 둘레를 구하는 circle이라는 함수를 만드시오. 참고 new.target https://cruella-..

JavaScript 2022.04.19

[JavaScript] new.target

new.target new.target 속성(property)은 함수 또는 생성자가 new 연산자를 사용하여 호출됐는지를 감지할 수 있습니다. new 연산자로 인스턴스화된 생성자 및 함수에서, new.target은 생성자 또는 함수 참조를 반환합니다. 일반 함수 호출에서는, new.target은 undefined입니다. 구문 new.target 예시 예제 일반 함수와 생성자를 이용해 두개의 수를 더하는 함수를 만드시오. 예제2 아래와 같은 코드는 obj가 출력되는 문제가 있다. 아래의 코드를 생성자로 출력할시와 일반 함수로 출력하는 함수를 구하시오. 답)

JavaScript 2022.04.19

[JavaScript] 객체지향, Constructor(생성자), new

객체지향 자바스크립트 데이터, 함수 기반 프로그래밍 data가 보호받지 못하는 문제점이 있다. func2 입장에서 data1이 바뀐 이유에 대해서 알 수 없다. 객체지향 프로그래밍 기존의 데이터, 함수 기반 개발에서 객체를 기반으로 구현하는 프로그래밍 객체지향 프로그래밍의 장점 응집도 향상 : 객체 = 속성 + 메서드 재활용성 : 범용성을 가진 객체를 통한 재활용성 증가. 유지보수성 : 코드의 구성 파악 용이, 낮은 결합도로 인한 오류 파급 제한 객체의 생성 방법 Object 형을 이용 사용하기 편함. 정형화된 방식이 없음. 인스턴스마다 코드를 작성해줘야 함. Closure를 이용. Readability가 낮음 독특한 메커니즘을 이용 * 객체를 생성해서 리턴해주는 기능을 가진 함수를 Facroty 함수 ..

JavaScript 2022.04.18
반응형