[TypeScript] abstract(추상 클래스)에 대해 이해하기
BE/TypeScript 2023. 6. 11.
추상클래스: 자체적으로 인스턴스를 생성할 수 없는 클래스를 말한다.
추상클래스는 일반적으로 하나 이상의 추상 메소드(abstract method)를 포함하고, 이 메소드들은 선언만 있고 구현 내용은 없다.
추상클래스를 사용하는 이유는?
추상클래스를 사용하는 이유는 기본적인 구조나 기능을 정의하고, 그 것을 확장하는 자식 클래스들에 특정 메소드 구현을 강제하기 위함이다. 이렇게 함으로 자식 클래스들이 일관된 방식으로 동작하도록 보장할 수 있다.
// 추상 클래스, Animal 클래스는 인스턴스를 생성할 수 없음
abstract class Animal {
// abstract 사용으로 추상 메소드 추가함
abstract makeSound(): void;
move(): void {
console.log('Moving along!');
}
}
class Dog extends Animal {
makeSound() {
console.log('Woof! Woof!');
}
}
const myDog = new Dog();
myDog.makeSound(); // 'Woof! Woof!'
myDog.move(); // 'Moving along!'
⭐️ 추상메서드의 타입은 자식 클래스에서도 그대로 따라가야 한다.
'BE > TypeScript' 카테고리의 다른 글
[TypeScript] type과 interface 차이점과 사용 팁 (0) | 2023.06.13 |
---|---|
[OnlyForMe] 기본 TS 프로젝트 설정하는 방법 (0) | 2023.06.12 |
[TypeScript] 함수와 메소드에 type alias를 붙이는 방법 (0) | 2023.06.06 |
[TypeScript] Literal Type과 as const이해하기 (0) | 2023.06.05 |
[TypeScript] 초기 설정 및 데이터 유형별 타입 지정 방법 (0) | 2023.06.04 |