Typescript 생성자, public, private
[생성자]
- 모든 class는 constructor를 가짐
- constructor는 class로부터 객체를 생성할 때 호출되며 객체의 초기화를 담당
클래스안에 컨스트럭터를 만들고
오브젝트를 생성할 때는 파라메터로 넣기만 하면 되는 장점이 있음 이거 자바랑 똑같은데
[access modifiers 접근제한자]
클라스 속 멤버 변수(프로퍼티)와 메소드에 적용될 수 있는 키워드
클라스 외부로부터의 접근을 통제
public: class선언할 때 디폴트임
private: 클라스내에서만 접근 가능
protcted: 클라스내부, 상속받은 자식 클라스에서 접근 가능
클래스내 프로퍼티에서도 접근제한자를 사용할 수 있음
private fullname: string 하면
- 외부클래스에서 읽기/수정 불가능
- 그대신 getter를 선언해서 그 변수를 프린트하기로 읽기 가능
- 그대신 setter를 선언해서 그 변수를 수정할 수 있음
private _fullname: string (비공개변수 암묵적컨벤션)
constructor의 매게변수에 access modifiers직접 적용 객체가 생성될 때 컨스트럭터의 매개변수로 전달된 값은 객체의 프로퍼티 값으로 자동으로 값이 초기화 되고 할당
constructor is a method when making a class
클래스가 시작할 때 마다 호출된다.
class Human {
public name: string;
public age: number;
public gender: string;
constructor(name:string, age:number, gender:string){
this.name = name;
this.age= age;
this.gender = gender;
}
}
const myLove = new Human("myLove", 26 , "Female")