类的多继承是否体现面向对象多态特征?

我们知道面向对象三大特征,封装、继承、多态。
请问,多继承是否是多态呢?

interface Printable {
  print(): void;
}

interface Loggable {
  log(): void;
}

class MyClass implements Printable, Loggable {
  print() {
    console.log("Printing...");
  }

  log() {
    console.log("Logging...");
  }
}

在我理解中,多个类不同地实现同一个接口,这个才是面向对象的多态。

这里的多继承是否属于类的多态呢?

阅读 1.8k
1 个回答

多态的前提:有继承关系,子类对象是可以赋值给父类类型的变量。例如Animal是一个动物类型,而Cat是一个猫类型。Cat继承了Animal,Cat对象也是Animal类型,自然可以赋值给父类类型的变量。

image.png
详细可查看我的这篇文章:

https://segmentfault.com/a/1190000043455514
推荐问题
logo
Microsoft
子站问答
访问
宣传栏