java 对于继承的思考
这里需要说明一点虽然子类继承了父类的私有成员,但是子类不具有访问这些成员的权限,比如上图中的name,正常的一个类中我们可以通过this关键字来访问这个属性,但是这是继承自父类的私有属性,虽然子类中具有这个属性,但是子类是无法通过this来访问这个属性的,只能通过父类的非私有方法来访问!!!很关键!
引用别人的例子:
public class Main {
public static void main(String[] args)
{
Father f = new Son();
Son s = new Son();
f.FMethod();
s.FMethod();
}
}
class Father
{
protected int k = 0;
private int p = 1;
private final int q = 100;
public void FMethod(){}
}
class Son extends Father {
}
在加上断点 debug
可以看到
这是最好的证明!!子类将父类的私有变量确确实实的继承了下来
参考的链接:
https://blog.****.net/dietime1943/article/details/52926390