为什么java代码设计为不支持类多继承
下文笔者讲述Java语言设计为不能同时继承多个类的原理,如下所示:
一个子类继承两个父类,使用super调用方法时,就无从知道到底是哪一个父类中的方法,此时就出现混乱
设计为不支持同时继承多个类的原因为: 1.当可同时继承多个类,则会出现有时运行方法时,不知道运行哪一个方法 2.类型转换,构造函数的运行顺序都会出现问题
class A extends B,C{ public void testFun(){super.t(); } public A(){ super();//此时无法界定先运行B,还是C的构造方法 }}当B和C中都有t方法时,此时运行super.t()我们将无法得知运行的是B类中的t()还是C类中t()方法