implements 키워드

|

코딩애플강의를 보고 정리했습니다.

class 타입을 확인할 때 implements 키워드를 사용해서 할 수 있다.
(interface도 필요함)

implements 키워드

interface CarType {
  model: string;
  price: number;
}

class Car implements CarType {
  model: string;
  price: number = 1000;
  constructor(a: string) {
    this.model = a;
  }
}
let 붕붕이 = new Car('morning');

이렇게 작성해주면, 이 class가 이 interface에 있는 속성을 다 들고있는지 체크해줄 수 있다.

implements는 타입지정 문법이 아님

interface에 들어있는 속성을 갖고있는지 확인만하라는 뜻이다.
class에다가 타입을 할당하고 변형시키는 일은 못한다.

interface CarType {
  model: string;
  tax: (price: number) => number;
}

class Car implements CarType {
  model; ///any 타입됨
  tax(a) {
    ///a 파라미터는 any 타입됨
    return a * 0.1;
  }
}

implements는 class의 타입을 체크하는 용도지 할당하는게 아님을 명심하자