❶ 在java里为什么一个子类不能同时继承两个以上的父类
解释的不是很专业
就是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{
}
那么当子类继承了这两个父类的话,当调用构造方法时,
会找不到你调用的是那个,即出现冲突。
❷ JAVA 中一个子类可不可以继承多个父类如果能,怎么表示
java不支持多继承。因为多继承有背面向对象编程。但是可以继承多个接口。sun公司设计java的时候原则上不允许程序员多继承,但是还是开了个后门,你可以再一个类中写上一个或多个内部类,再让其他类来继承他,变相的也是多继承了。但是不建议这么做,非常影响程序的可读性,而且内部类处理起来不方便。
❸ java 可不可以继承多个类
1,java 是不可以继承多个类,java是单继承的,但是java 通过 接口可以实现多继承
2,也就是说, 一个java类只能继承一个父类, 但可以有多个接口.
3,若子类继承的父类中拥有相同的成员变量,子类在引用该变量时将无法判别使用哪个父类的成员变量。如:
public class classA // 父类 classA
{
private int num = 0;
}
public class classB // 父类 classB
{
private int num = 1;
}
public class classC extends classA,classB // 子类 classC 继承于 classA 和 classB
{
public static void main(String [] args)
{
classC obj = new classC();
obj.print(); // 调用父类成员变量 num , 那 num 等于 0 还是 1 ?
}
public void print()
{
System.out.println(super.num);
}
}
2.若一个子类继承的多个父类拥有相同方法,同时子类并未覆盖该方法(若覆盖,则直接使用子类中该方法),那么调用该方法时将无法确定调用哪个父类的方法。如:
public class classA // 父类 classA
{
public void fun()
{
System.out.print("hello");
}
}
public class classB // 父类 classB
{
public void fun()
{
System.out.print("hello");
}
}
public class classC extends classA,classB
{
public static void main(String [] args)
{
classC t = new classC();
t.print();
}
public void print()
{
super.fun(); // 调用父类中 fun 方法,但由于classA、classB都有fun()方法,将无法确定使用
// 哪个父类中的方法
}
}
因此,Java仅允许单继承,即一个子类只能继承于一个父类。但为了拓展子类的功能,Java使用接口以克服不使用多继承带来的不足。
接口是一个特殊的抽象类,接口中成员变量均默认为 static final 类型,即常量,且接口中的方法都为抽象的,都没有方法体。
资料来源:http://blog.sina.com.cn/s/blog_6ed1419201013x47.html
❹ Java为什么不能继承多个父类
解释的不是很专业
就是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{
}
那么当子类继承了这两个父类的话,当调用构造方法时,
会找不到你调用的是那个,即出现冲突。
❺ java中如何继承多个父类,如何实现多个接口
java中没有多继承(就是不能继承多个父类),只有多重继承。。比如:
class A{
}
class B extends A{
}
class C extends B {
}
可以实现多个接口,比如:
interface A{
}
interface B{
}
class C implements A, B
{
}
❻ java中一个子类可以有多个父类,并可以为一个类定义多个子类
java中一个子类可以有多个父类,这是不正确的,因为当初始化的时候,就很难确定父类是哪一个
❼ java中一个类可以有几个父类
Java类只支持单继承,不支持多继承。也就是说只可以有1个父类。
但是接口可以多继承。接口可以有多少父类。
类与类
继承,单继承
类与接口
实现,单实现,多实现
接口与接口
继承,单继承,多继承
❽ 一个java类可以有多个父类
必须可以啊,子类可以有无限多个,根据需要写,所有的类都是object的子类。虽然子类只能继承一个父类,但是可以另外实现多个接口
❾ java中一个子类可以有多个父类
Java是单继承,一个子类只能有一个父类,但能实现多个接口。
❿ 一个Java类可以有多个父类谁知道是对还是错
应该是对的
一般都讲:“单继承,多接口”
对于类而言,只能继承一个父类,而可以实现多个接口
对于接口而言,继承不是单继承的,可继承多个接口