클래스와 인스턴스

이유정·2022년 9월 21일
0

코드스테이츠 TIL

목록 보기
20/62
post-thumbnail

객체 지향 프로그래밍

하나의 청사진을 만들고, 그 청사진을 바탕으로 한 객체를 만드는 프로그래밍 패턴
여기서 청사진은 'class'
한 객체는 'instance' 라고 한다.

인스턴스

인스턴스의 사용
let avante = new Car('hyundai','avante','black');
avante.color;
avante.drive();

let mini = new Car('bmw','mini','white');
mini.brand;
mini.refuel();

new 키워드

'class' 를 통해 'instance'를 만들 때 함수를 이용하는 방법이 조금 다르다.
바로, 'new' 키워드를 써서 만든다.

생성자 함수

'instance'를 만들때 생성자 함수'constructor'함수를 실행한다.
참고로 생성자 함수는 return 값을 만들지 않는다.

ES5 클래스 작성 문법

function Car(brand, name, color){
this.brand = brand;
this.name = name;
this.color = color;

Car.prototype.refuel = function(){
}
Car.prototype.drive = function(){
}

let avante = new Car('hyundai','avante', 'black');
avante.color;
avante.refuel();
}

ES6 클래스 작성 문법

class Car {
constructor(brand, name, color){
}
refuel(){
}
drive(){
}
}

사실,,,

우리가 그동안 만들었던 배열은, 전부 Array의 인스턴스다!
따라서
let arr = ['code', 'states', 'pre']와
let arr = new Array('code', 'states', 'pre') 가 동일하다.

profile
팀에 기여하고, 개발자 생태계에 기여하는 엔지니어로

0개의 댓글