[typescript] 클래스 상속과 인터페이스 구현을 사용하여 어떤 기능을 구현할 수 있는가?

클래스 상속

클래스 상속을 사용하면 기존 클래스의 속성과 메서드를 다른 클래스에서 재사용할 수 있습니다. extends 키워드를 사용하여 부모 클래스의 기능을 자식 클래스에 상속할 수 있습니다. 자식 클래스에서 부모 클래스의 메서드를 오버라이드하여 수정할 수도 있습니다.

인터페이스 구현

인터페이스는 클래스나 객체가 특정 메서드나 속성을 구현하기 위한 규약을 정의합니다. 클래스는 implements 키워드를 사용하여 인터페이스를 구현할 수 있습니다. 이를 통해 TypeScript에서 다른 클래스 간에 유사한 동작을 보장할 수 있습니다.

예제 코드

아래는 클래스 상속과 인터페이스 구현을 사용한 TypeScript 예제 코드입니다.

// 클래스 상속 예제
class Animal {
  name: string;

  constructor(name: string) {
    this.name = name;
  }

  makeSound() {
    console.log('Some sound');
  }
}

class Dog extends Animal {
  constructor(name: string) {
    super(name);
  }

  makeSound() {
    console.log('Woof');
  }
}

// 인터페이스 구현 예제
interface Printable {
  print: () => void;
}

class Document implements Printable {
  print() {
    console.log('Printing document');
  }
}

참고 자료