[typescript] 추상 클래스의 추상 메서드와 구현 메서드
추상 클래스는 TypeScript에서 일반적으로 사용되는 개념 중 하나입니다. 이러한 클래스는 하나 이상의 추상 메서드를 포함할 수 있습니다.
추상 클래스란?
추상 클래스는 추상 메서드와 구현된 메서드를 포함하는 클래스입니다. 추상 클래스는 직접 인스턴스화될 수 없으며, 상속을 통해 파생된 클래스에서만 사용될 수 있습니다.
추상 메서드
추상 메서드는 구현을 포함하지 않는 메서드입니다. 이 메서드는 파생된 클래스에서 반드시 구현되어야 합니다. 추상 메서드는 abstract
키워드를 사용하여 선언됩니다.
abstract class Shape {
abstract draw(): void;
}
위의 예제에서 Shape
클래스에는 draw
라는 추상 메서드가 선언되어 있습니다.
구현된 메서드
구현된 메서드는 이미 구현된 메서드입니다. 이 메서드는 파생된 클래스에서 재정의될 수 있습니다.
abstract class Shape {
abstract draw(): void;
move(): void {
console.log('Shape is moving');
}
}
위의 예제에서 move
메서드는 구현된 메서드입니다.
추상 클래스의 활용
추상 클래스는 다음과 같은 상황에서 유용하게 활용될 수 있습니다.
- 다형성(Polymorphism): 추상 클래스를 사용하여 다양한 하위 클래스를 한 가지 타입으로 다룰 수 있습니다.
- 재사용성(Reusability): 공통되는 구현을 추상 클래스에 위치시킴으로써 코드 재사용성을 높일 수 있습니다.
결론
추상 클래스는 TypeScript에서 추상 메서드와 구현된 메서드를 함께 사용하여 클래스들 간에 공통된 동작을 정의하는 데 유용합니다. 추상 클래스를 통해 코드의 일관성과 유지보수성을 높일 수 있습니다.
참고 문헌: