【发布时间】:2015-07-10 19:45:28
【问题描述】:
我有三门课
ChildTwo
public class ChildTwo {
public void methodOfChildTwo() {
System.out.println("methodOfChildTwo.");
}
}
ChildOne 扩展了 ChildTwo
public class ChildOne extends ChildTwo{
public void methodOfChildOne() {
System.out.println("methodOfChildOne.");
}
}
扩展 ChildOne 的父级
public class Parent extends ChildOne{
public void methodOfParent() {
System.out.println("methodOfParent.");
}
}
当我创建 Parent 的对象时,我可以调用所有三个方法,因为所有这些方法都是在 Parent 类中继承的。
Parent parent =new Parent();
parent.methodOfParent();
parent.methodOfChildOne();
parent.methodOfChildTwo();
我的问题是
- 我能说这样我可以在Java中实现多重继承吗?
- 这种方法在概念上与多个扩展类似,例如
Parent extends ChildOne,ChildTwo(Java 不支持这些语法)。为什么 Java 不支持这种语法,尽管我们可以通过上述方式实现这一点?
请有人澄清一下。
【问题讨论】:
-
多重继承将使
Child扩展Father和Mother。您将如何实现这一目标? -
多重继承类似于
.<:;您在这里拥有的是.-.-.。点代表类,<和-代表继承。如果你想要一个非常粗略的文字解释。 -
不支持,因为如果 ChildOne 和 ChildTwo 都有相同的方法,它如何确定保留哪个方法,忽略哪个方法。这可能看起来很容易,但有些人可能会认为它在一种方式上比另一种方式更有意义。通过保持简单并只允许单一继承,事情变得更简单
-
在概念上类似于(祖母、母亲、女儿)和(母亲、父亲、女儿)。
-
我的父类扩展了两个类
标签: java