程序员社区

(Java基础面试题)为什么 Java 不支持多重继承?

如果有两个类共同继承(extends)一个有特定方法的父类,那么该方法会被两个子类重写。然后,如果你决定同时继承这两个子类,那么在你调用该重写方法时,编译器不能识别你要调用哪个子类的方法。这也正是著名的菱形问题,见下图。

(Java基础面试题)为什么 Java 不支持多重继承?插图

ClassC 同时继承了 ClassA 和ClassB,ClassC 的对象在调用 ClassA 和 ClassB 中重载的方法时,就不知道该调用 ClassA 的方法,还是 ClassB 的方法。

Java面试题

赞(0) 打赏
未经允许不得转载:IDEA激活码 » (Java基础面试题)为什么 Java 不支持多重继承?

一个分享Java & Python知识的社区