我们在Java中知道,没有多重继承,你将如何证明这个例子.
Class A
{
has some features
Class B extends Class C
{
I can access A + C's features, B is child of two parents?
}
}
Run Code Online (Sandbox Code Playgroud)
B 不是两个父母的孩子,它是 C 的“孩子”,但可以访问 A 的属性,它是 A 的一部分,但不是 A 的子类。
您可以运行以下代码来确定:
class Main {
public void bar() {
Object o = new B();
System.out.println("is B subclass of Main:" + (o instanceof Main));
System.out.println("is B subclass of C:" + (o instanceof C));
}
public class C { }
public class B extends C { }
public static void main(String[] argv) {
Main a = new Main();
a.bar();
}
}
Run Code Online (Sandbox Code Playgroud)
它将打印 false,因为 o (这是 B)对于第一个问题不是 instacneof Main,但对于第二个问题是 true,因为 B 是 C 的实例
编辑:编辑代码以使其更具可读性(至少在我看来) ..)