Java中的多重继承,类中的类

Ran*_*don 5 java

我们在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)

ami*_*mit 2

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 的实例
编辑:编辑代码以使其更具可读性(至少在我看来) ..)