假设有类A,B,C,D它们之间有这样的关系B继承AC继承AD继承B那么下面的代码会出现什么问题?为什么?
C c_class = new D();谢谢~

解决方案 »

  1.   

    你这种做法是java多态的性质,多态的前提是两个类之间有父子类关系(继承),虽然C、D有共同的父类A,但是C、D之间没有继承关系,所以这里多态性质失效,编译就出问题。
      

  2.   

    A -- 动物
    B -- 狗
    C -- 猫
    D -- 沙皮C c_class = new D(); 
    猫 c_class = new 沙皮();你说会有什么问题。