在Java里为什么一个子类不能同时继承两个以上的父类?

2025-02-01 14:03:24
推荐回答(5个)
回答1:

解释的不是很专业
就是java里规定得是:单继承,多实现。
指的就是只能继承一个父类,可以实现多个接口

通俗点说:单继承就好比是一个人只能有一个亲生父亲
而不可能有两个
继承就是使子类具有父类的
属性,和方法
假如有两个父类:
//父类1
public class Person{
private String name;
private String id;
//有参构造方法
public Person(Person1 person){

}
}
//父类二
private class Teacher{
private String name;
private String id;
//有参构造方法
public Teacher(Teacher teacher){
}
//子类
public class Student{
}

那么当子类继承了这两个父类的话,当调用构造方法时,
会找不到你调用的是那个,即出现冲突。

回答2:

子类不能继承两个以上的父类是java语言规范定义的,就像定义equals方法返回true的时候hashCode必须相同一样,没有什么为什么。
java中在接口是可以继承两个父类的;
java中可以通过内部类继承类;
上面两种方法结合可以完美的实现多继承。

回答3:

这是JAVA的规定,也是区别于C++的很大的地方,可以理解为一个孩子不能有两个亲爹,但可以实现多个接口,也就是可以有多个干爹,

回答4:

这个可以理解是规定,没有什么可解释的。
在java中要想实现多继承,都是用接口实现的。

回答5:

这是SUN规定的,没有什么好解释的。