TypeScript类和多态、抽象类、访问修饰符
warning:
这篇文章距离上次修改已过447天,其中的内容可能已经有所变动。
// 定义一个基类
abstract class Animal {
// 抽象方法,子类必须实现
abstract makeSound(): void;
}
// 实现具体的狗类
class Dog extends Animal {
makeSound() {
console.log('汪汪汪!');
}
}
// 实现具体的猫类
class Cat extends Animal {
makeSound() {
console.log('喵喵喵!');
}
}
// 使用多态,通过基类类型调用makeSound方法
function makeAnimalsSound(animals: Animal[]) {
animals.forEach((animal) => {
animal.makeSound();
});
}
// 创建实例
const dog = new Dog();
const cat = new Cat();
// 使用多态调用方法
makeAnimalsSound([dog, cat]);这段代码展示了如何在TypeScript中使用多态、抽象类和抽象方法。Animal是一个抽象类,它定义了一个抽象方法makeSound。Dog和Cat是继承自Animal的具体类,它们分别实现了makeSound方法。makeAnimalsSound函数接受一个Animal数组作为参数,演示了如何使用多态来处理不同的Animal子类实例。
评论已关闭