Dans mon collège, on m'a enseigné que les membres privés ne sont pas hérités par les sous-classes &, c'est pourquoi nous ne pouvons pas y accéder à l'intérieur des sous-classes. Dans un livre, il dit que toutes les propriétés de la superclasse sont héritées, mais en raison de modificateurs d'accès stricts comme private
, certains d'entre eux ne sont pas accessibles. Je suis confus. Quelle déclaration est vraie?Les membres privés ne sont pas hérités ou ne peuvent pas être accédés?
-1
A
Répondre
0
Ils sont hérités. Vous pouvez tester cela en créant une méthode publique qui référence les membres privés et tenter de l'appeler à partir d'une sous-classe. Il se comportera toujours "correctement:", indiquant que les membres privés sont toujours là, juste "cachés" du code de la sous-classe
+0
Par la définition de l'héritage JLS, ils sont explicitement pas hérités (voir la question que cela est marqué comme un doublon de). – yshavit
voir http://stackoverflow.com/questions/4716040/do-subclasses-inherit-private- champs – Austin