2016-07-26 66 views
-1

在我的大学里,我被告知私人成员不会被子类&继承,这就是为什么我们无法在子类中访问它们的原因。在一本书中,它表示超类的所有属性都是继承的,但由于严格的访问修饰符如private,其中一些属性无法访问。我很困惑。哪个论述是对的?私人会员不会被继承或只是无法访问?

+4

请参阅http://stackoverflow.com/questions/4716040/do-subclasses-inherit-private-字段 – Austin

回答

0

它们被继承。您可以通过制作一个引用私有成员的公共方法来测试它,并尝试从一个子类中调用它。它仍然会表现“正确:”,表示私有成员仍然存在,只是从子类的代码中“隐藏”。

+0

通过JLS的继承定义,它们明确地不被继承(请参阅标记为重复的问题)。 – yshavit