Maison >Java >javaDidacticiel >Comment les classes Java externes peuvent-elles accéder aux membres privés de la classe interne ?
En Java, les classes internes sont des classes imbriquées qui résident dans une autre classe englobante, connue sous le nom de classe externe. Étonnamment, les classes externes possèdent la capacité d'accéder aux variables d'instance privées de leurs classes internes.
Explication :
Les classes internes Java ne sont pas des entités véritablement indépendantes mais plutôt une extension de leurs classes englobantes. Cela signifie qu'ils héritent de la portée de leurs classes externes, leur accordant l'accès à tous ses membres privés.
La justification de cette décision de conception réside dans la relation étroite entre la classe interne et la classe externe. Les classes internes encapsulent essentiellement des fonctionnalités spécifiques étroitement liées à leurs classes externes. Ainsi, leur permettre d'accéder aux membres privés de la classe externe améliore l'organisation et la maintenabilité du code.
Exemple :
Considérez l'extrait de code suivant :
class ABC{ class XYZ{ private int x=10; } public static void main(String... args){ ABC.XYZ xx = new ABC().new XYZ(); System.out.println("Hello :: "+xx.x); } }
Dans cet exemple, la classe externe ABC peut accéder à la variable d'instance privée x de sa classe interne XYZ. Ceci est permis car la classe interne XYZ est une extension de sa classe externe et hérite donc de sa portée, fournissant à ABC l'accès à ses variables privées.
En conclusion, la capacité des classes externes à accéder aux membres privés de la classe interne découle de la relation inhérente entre eux, permettant une structuration du code pratique et organisée.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!