일단 class는 객체지향 문법중 하나로 javascript에서도 많이 쓰인다.
이번에 타입스크립트를 공부하면서 다시 정리하려고 한다
(앞으로 몇번 더 해야 완벽 이해 가능할듯...^^)
코딩애플에서는 class를 한마디로 쉽게 object(객체) 찍어내는 기계
라고 생각하라고 했다.
(ㅋㅋㅋㅋ역시 코딩애플)
일단 밑에는 타입스크립트 강의에서 배운 내용 정리 시작!
function Person(name, age) {
this.name = name;
this.age = age;
}
const capt = new Person('Tom', 30);
💡 코딩애플 왈:
this
는 기계로부터 새로 생성되는 object로 생각(=instance(인스턴스)
)new Person
은 객체를 생성해주는 생성자
(한줄로 객체 생성 가능해짐!)
타입스크립트에는 접근 제한자(Access modifier)인
private
,public
,protected
를 지원 -> 외부에서 특정 메서드나 프로퍼티에 접근 범위를 지정할 수 있음
class Person {
//클래스에서 사용할 멤버변수의 타입을 먼저 정해주어야함
public age: number;
private name: string; // private: 해당 클래스의 인스턴스에서만 접근 가능
readonly log: string //readonly: 읽기만 가능, 수정되면 안되는 경우 사용
constructor(name: string, age: number) {
this.age = age;
this.name = name;
}
}
const capt = new Person('Tom', 30);
class
문법에서는constructor
사용하여 위의 코드처럼 틀 만들어주기
💡 위 두개 코드는 동일한 기능을 가지고 있지만 다른 형태