본문 바로가기
Typescript

230601 Typescript 인터페이스 / 클래스

by hyerin1201 2023. 6. 1.

타입스크립트에서 인터페이스란, 타입별칭과 동일하게 특정타입에 이름을 지어주는 타입스트립트만의 독특한 문법.

타입별칭과 거의 유사하다.

 

인터페이스 타입도 마찬가지로 선택적프로퍼티(Optional Property)와 읽기전용 프로터피를 가지고 있다

 

  • 인터페이스 확장
    하나의 인터페이스를 다른 인터페이스들이 상속받아 중복된 프로퍼티를 정의하지 않도록 도와주는 문법!

 

  • 인터페이스는 중복선언이 가능하다.
    -> 하나로 인식함.(선언합침)

 


Class 클래스

자바스크립트에서 클래스는 동일한 요소를 담고 있는 객체를 보다 쉽고, 효율적으로 재생성하기 위해서 만들어진 문법이다.

타입스트립트에서도 동일하게 사용가능하다.


타입스크립트에서 클래스는 또하나의 타입으로도 사용가능하다. (클래스 = 타입요소)

 

타입스크립트에서도 클래스 상속이 가능하다. 단, 상속시 super 메서드 호출 후 확장하고자 하는 생성자를 호출해야 한다.


Class 접근 제어자 (Access Modifier)

  • 타입스크립트 클래스의 필드값은 기본적으로 퍼블릭(piblic)이라는 디폴트값을 가지고 있다.

(*퍼블릭 = 수정 편집 가능)

따라서 위와같이 수정이가능.

 

  • 속성을 퍼블릭(piblic) -> 프라이빗(private)으로 설정한다면 변경할 수 없다.(-> 확장영역에서도 사용불가)

  • 프로텍티드(protected)값은 외부에서는 사용이 불가하지만 확장 클래스 안에서는 제한적으로 수정이 가능하도록 설정한 필드 속성
  •  

인터페이스를 구현하는 클래스

타입스트립트에서 인터페이스의 또다른 역할

implements : 타입스트립트에서 클래스 생성시 사용, 해당 인터페이스를 생성하고자하는 클래스에서 모두 만족하도록 구현하게끔 만드는 키워드..?