面试题答案
一键面试方法重写规则
- 参数列表和返回类型兼容性:子类重写的方法参数列表必须与父类被重写方法的参数列表兼容,返回类型也必须兼容。通常情况下,返回类型要么与父类方法返回类型相同,要么是其子类型。
- 访问修饰符:子类重写方法的访问修饰符不能比父类更严格。例如,如果父类方法是
public
,子类重写方法不能是private
或protected
。
示例代码
class Animal {
makeSound(): string {
return 'Generic animal sound';
}
}
class Dog extends Animal {
makeSound(): string {
return 'Woof!';
}
}
const animal = new Animal();
const dog = new Dog();
console.log(animal.makeSound());
console.log(dog.makeSound());