Extends & Implements

G·2023년 6월 6일
0

TypeScript

목록 보기
2/6

Extends

Extends는 어떠한 class를 상속받고 싶을 때 하위 class에서 extends를 사용하여 상속받을 수 있습니다.

interface Student {
  name: string;
  grade: number;
}
interface studentInfo extends Student  {
  age: number;
  address: string;
} 

studentInfo class에는 Student에서 정의된 name, grade를 포함하여 ageaddress도 기입해야지 error가 발생하지 않습니다.
또한 extends는 하나가 아닌 여러 개를 이용하여 확장할 수 있습니다. CarToy라는 class가 있고 2개의 class를 extends 하기 위해서는 interface ToyCar extends Car, Toy처럼 쉼표로 구분하여 작성하면 됩니다.


Implements

Implements는 class의 interface에 만족하는지 확인하기 위해 사용하는 키워드입니다.

interface Student {
  name: string;
  grade: number;
}

class student implements Student {
  name = 'kim',
  grade = 1
}

student class에서 namegrade가 정의되지 않았다면 error가 발생합니다. 이처럼 implements 키워드는 새로운 클래스를 생성할 때 interface에서 정의한 값들이 모두 들어가 있는지 체크합니다.

profile
기!술! 블로그

0개의 댓글