<aside> ☝ 목차
</aside>
동물 추상 클래스
abstract class Animal {
// 추상클래스 내에서는 반드시 한 개 이상의 추상 메서드가 정의되어야 함
// : 그 외에는 다른 일반 메서드와 일반 멤버 변수 정의도 가능
// 추상 메서드 정의
// : 중괄호의 로직 구현부가 존재하지 X
abstract makeSound(): void;
move() {
console.log('moving~~~');
}
}
추상 클래스를 상속한 Dog 클래스
class Dog extends Animal {} // Error - 내용은 아래 사진
비추상 클래스 'Dog'은(는) 'Animal' 클래스에서 상속된 추상 멤버 'makeSound'을(를) 구현하지 않습니다.
추상 클래스를 상속받은 클래스에서는 반드시 추상 메서드를 구현!!
메서드의 로직 {}중괄호를 작성해야 함!!
class Dog extends Animal {
makeSound(): void {
console.log('멍멍');
}
}
const myDog = new Dog();
myDog.makeSound();
myDog.move();