Ответ
Абстрактный класс в TypeScript — это класс, который нельзя инстанциировать напрямую. Он служит шаблоном для других классов и может содержать абстрактные методы (без реализации), которые должны быть реализованы в дочерних классах.
abstract class Animal {
abstract makeSound(): void;
move(): void {
console.log("Moving...");
}
}
class Dog extends Animal {
makeSound() {
console.log("Woof!");
}
}
const dog = new Dog();
dog.makeSound(); // "Woof!"
dog.move(); // "Moving..."Ключевые особенности:
- Создается с ключевым словом
abstract - Может содержать как абстрактные, так и обычные методы
- Обязателен для наследования
- Абстрактные методы не имеют тела и должны быть реализованы в наследниках