[OOP]클래스와 인스턴스
class - 청사진
instance object - 청사진을 바탕으로 한 객체
function Clothes(color) {}
let jean = new Clothes("blue");
let chicago = new Clothes("red");
let mint = new Clothes("green");
생성자(constructor) 함수
인스턴스가 만들어질 때 실행, return 없음
class Clothes {
constructor(brand, name, color);
}
let jean = new Clothes('polo', 'jean', 'blue');
let chicago = new Clothes('nike', 'chicago', 'red');
let mint = new Clothes('nba', 'mavericks', 'green');
속성과 메소드
학생의 속성
- 학번
- 학년
- 과
- 동아리
학생의 메소드
- 전공공부
- 술마시기
- 커피사기
클래스: 속성정의
class Student {
constructor(age, grade, major) {
this.age = age;
this.grade = grade;
this.major = major;
}
}
클래스: 메소드 정의
class Student {
constructor(age, grade, major) {
this.age = age;
this.grade = grade;
this.major = major;
}
study() {
return "전공공부";
}
drink() {}
}
인스턴스에서 사용
let dk = new Student(29, 3, "sports");
dk.age; // 29
dk.study(); // 전공공부
ES5에서 속성정의
function Student(age, grade, major) {
this.age = age;
this.grade = grade;
this.major = major;
}
ES5에서 메소드정의
function Student(age, grade, major) {
this.age = age;
this.grade = grade;
this.major = major;
}
Student.prototye.study = function () {
return "전공공부";
};
댓글남기기