继承中有一种隐式继承,就是你现在所说的这种情况。
隐式继承:
父类中的private成员是是以隐式继承方式继承到子类中的,子类不可以直接调用隐式继承下来的成员,但是可以间接调用,也就是通过父类的非私有成员函数调用
class Demo3
{
public static void main(String[] args)
{
Zi zi=new Zi("小明");
zi.print();
}
}
class Fu
{
private String name;
public Fu(String name){
this.name=name;
}
//子类可以通过这个方法调用到从父类继承下来的私有成员
public void print(){
System.out.println(name);
print1();
}
private void print1(){
System.out.println("私有方法");
}
}
class Zi extends Fu
{
public Zi(String name){
super(name);
}
}
上面的代码就证明了猜想,如果没有继承私有成员,将会报错
|