JAVA继承致命方块

    xiaoxiao2022-07-12  135

    《head first java》第八章

    java不支持多重继承,多重继承可能会导致致命方块的问题。

    如:

    一个父类

    public class DigitalRecorder{

        public void burn(){

        }

    }

    两个子类重写burn方法

    public class CDBurner extends DigitalRecorder{

        public void burn(){

        }

    }

    public class DVDBurner extends DigitalRecorder{

        public void burn(){

        }

    }

    如果此时再有一个子类,分别继承CDBurner和DVDBurner的话

    public class ComboDrive extends CDBurner,DVDBurner{//注:此时编译器无法通过编译,假设可以这么写

        public static void main(String[]args){

            ComboDrive c = new ComboDrive();

            c.burn();

        }    

    }

    此时,c.burn并不知道调用哪个父类中的方法。

    这张图看起来像是扑克牌的方块,所以叫做致命方块

    最新回复(0)