TypeScript类和继承
// 定义一个基类,包含一个可以被子类覆盖的方法
class Animal {
name: string;
constructor(theName: string) {
this.name = theName;
}
move(distanceInMeters: number = 0) {
console.log(`${this.name} moved ${distanceInMeters}m.`);
}
}
// 定义一个继承自Animal的子类,并覆盖了move方法
class Dog extends Animal {
constructor(name: string) {
super(name);
}
bark() {
console.log('Woof! Woof!');
}
move(distanceInMeters: number = 5) {
console.log(`${this.name} ran ${distanceInMeters}m.`);
}
}
// 使用
const dog = new Dog('Buddy');
dog.bark();
dog.move(10);
这段代码展示了如何在TypeScript中定义一个基类Animal
和一个继承自Animal
的子类Dog
。子类Dog
覆盖了基类的move
方法,并添加了自己的bark
方法。代码的最后部分创建了一个Dog
实例,并调用了它的方法,展示了继承和多态的特性。
评论已关闭