关于子类是否拥有父类的私有成员:
一言以蔽之:拥有,但不可见。
继承是可以继承的,即子类“拥有”父类的私有成员,但在子类的内部,父类的private成员是不可见的:
即对于父类的private成员,父类和子类的区别在于:
是否拥有 在该类内部是否可见
父 类 拥有 是
子 类 拥有 否
用一个例子可以说明这种情况:
假设有两个类:父类Person,子类Scientist,父类内部有一个private的display方法:

子类:

现在在父类的main方法中,创建子类对象,用该子类对象去调用父类的private方法:

编译通过,运行成功:

这说明:子类是拥有display方法的,即从父类继承了display方法;只不过在子类内部,这个display方法是不可见的,所以无法调用;但在父类内部,display方法是可见的,所以可以调用
匆忙之下写的,有点乱,希望对大家有帮助
本文探讨了在面向对象编程中,子类如何继承父类的私有成员,以及这些成员在子类中的可见性和使用限制。通过一个具体的例子说明了尽管子类‘拥有’父类的私有成员,但在子类内部这些成员是不可见的。
3万+

被折叠的 条评论
为什么被折叠?



