tech.junha.kr

Typescript 생성자, public, private

[생성자]

  1. 모든 class는 constructor를 가짐
  2. constructor는 class로부터 객체를 생성할 때 호출되며 객체의 초기화를 담당
    클래스안에 컨스트럭터를 만들고
    오브젝트를 생성할 때는 파라메터로 넣기만 하면 되는 장점이 있음 이거 자바랑 똑같은데
    [access modifiers 접근제한자]
    클라스 속 멤버 변수(프로퍼티)와 메소드에 적용될 수 있는 키워드
    클라스 외부로부터의 접근을 통제
    public: class선언할 때 디폴트임
    private: 클라스내에서만 접근 가능
    protcted: 클라스내부, 상속받은 자식 클라스에서 접근 가능
    클래스내 프로퍼티에서도 접근제한자를 사용할 수 있음
    private fullname: string 하면
  1. 외부클래스에서 읽기/수정 불가능
  2. 그대신 getter를 선언해서 그 변수를 프린트하기로 읽기 가능
  3. 그대신 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")