home
자바
home
👼🏽

4. 객체지향

타입스크립트는 생성자 함수를 만들 때 일반 객체지향 코드처럼 this.어쩌구 = 어쩌구를 하지 않아도 된다. 파라미터들만 써주면 타입스크립트가 알아서 constructor 함수를 만들어준다.
이렇게 작성하면
이런식의 자바스크립트로 만들어준다!
객체지향 사용
이런식으로 private으로 선언한 객체는 컴파일 오류가 뜬다! (접근할 수 없다)

Interfaces

단어의 뜻을 보여주되 수정하게 하고 싶지는 않다면 readonly 속성을 부여한다.
인터페이스는 타입과 달리 오브젝트의 모양만 명시할 수 있다.
type sun = string //작동O interface sun = string //작동X
TypeScript
복사
결국 목적이 오브젝트의 타입을 명시하는 것이라면 둘다 써도된다. 하지만! 인터페이스를 쓰는 편이 더 객체지향적이기 때문에 인터페이스를 사용하는것을 추천한다. (상속 … 등)
인터페이스는 자바스크립트로 컴파일 되지 않아! 추상 클래스와 비슷한 보호를 제공하지만 자바스크립트에서는 인터페이스가 보이지 않지! (일반적인 클래스로 바뀌어서 보여!)
type을 인터페이스처럼 사용하는 방법: & 연산자를 사용
type Animal = { name: string } type Bear = Animal & { honey: boolean } const bear = getBear(); bear.name; bear.honey;
TypeScript
복사