不是,继承,是拇该类可继承访问其父类的所有非私有属性和方法。
A类最终是拥有C类中的非私有属性和方法的,如果C类有的话。
你可以做个实验:
A、B、C三个类都有一个private, protect, public 属性。
你看看在A类不能不能访问C类的属性,这样就清楚了。
同时继承父类的父类,也就是C.
包括public ,private ,protected 域名的方法和属性,但是private域的属性或者方法子类是没有资格访问的(这里需要注意,没有权限访问并不代表没有继承),所以说子类是继承了基类(父类)的所有.
会继承所有的,既有B 也会有C, 你在A里面用super调用父类的方法或者属性,是一个递归的查找过程,先去直接父类B中,查找,如果有就返回,如果没有,继续向B的父类C查找,以此类推
我和你举个列子你就明白了
class A
{
public A()
{
System.out.println("调用A构造方法");
}
}
class B extends A
{
public B()
{
super();
System.out.println("调用B构造方法");
}
}
class C extends B
{
public C()
{
super();
System.out.println("调用C构造方法");
}
}
main:
C c= new C();
结果打印出
调用A构造方法
调用B构造方法
调用C构造方法
所以看出来构造C的同时会创建A,B
先创建A 在B 最后C
其实C继承了A,B
不懂的再问吧
错了,我们说JAVA的类都是继承自Object ,那么也就是说子类继承所有父类。