我们知道面向对象三大特征,封装、继承、多态。
请问,多继承是否是多态呢?
interface Printable {
print(): void;
}
interface Loggable {
log(): void;
}
class MyClass implements Printable, Loggable {
print() {
console.log("Printing...");
}
log() {
console.log("Logging...");
}
}
在我理解中,多个类不同地实现同一个接口,这个才是面向对象的多态。
这里的多继承是否属于类的多态呢?
多态的前提:有继承关系,子类对象是可以赋值给父类类型的变量。例如Animal是一个动物类型,而Cat是一个猫类型。Cat继承了Animal,Cat对象也是Animal类型,自然可以赋值给父类类型的变量。
详细可查看我的这篇文章: