[JAVA] Nested classes
Résolu/Fermé
A voir également:
- [JAVA] Nested classes
- Waptrick java football - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
- Jeux java itel football - Télécharger - Jeux vidéo
- Java jre - Télécharger - Langages
- Télécharger jeux java gameloft gratuit - Forum Mobile
3 réponses
poukkid
Messages postés
106
Date d'inscription
mercredi 20 mai 2009
Statut
Membre
Dernière intervention
11 avril 2012
11
30 août 2011 à 10:58
30 août 2011 à 10:58
Salut,
C'est plutot l'inverse, les classes internes sont en général utilisées pour pouvoir avoir accès à tous les attributs de la classe englobante, même s'ils sont privates.
Vas voir la dessus cette notion est bien expliquée :
https://java.developpez.com/faq/java?page=Concepts-du-langage#NOTION_classe_interne_types
C'est plutot l'inverse, les classes internes sont en général utilisées pour pouvoir avoir accès à tous les attributs de la classe englobante, même s'ils sont privates.
Vas voir la dessus cette notion est bien expliquée :
https://java.developpez.com/faq/java?page=Concepts-du-langage#NOTION_classe_interne_types
Merci pour ta réponse.
Pour le moment c'est encore un peu brouillon dans mon esprit, j'ai déjà vu quelques exemple d'utilisation des classes internes mais j'ai encore un peu de mal à imaginer tous les cas ou elles peuvent être utiles.
Donc pour en revenir a ma question de base, je ne devrais jamais rencontrer de situation on ma classe englobante devrait avoir accès a un membre de la classe interne ?
Pour le moment c'est encore un peu brouillon dans mon esprit, j'ai déjà vu quelques exemple d'utilisation des classes internes mais j'ai encore un peu de mal à imaginer tous les cas ou elles peuvent être utiles.
Donc pour en revenir a ma question de base, je ne devrais jamais rencontrer de situation on ma classe englobante devrait avoir accès a un membre de la classe interne ?
KX
Messages postés
16733
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
31 janvier 2024
3 015
30 août 2011 à 21:39
30 août 2011 à 21:39
Si, tu peux accéder aux membres de la classe interne, mais uniquement au travers d'un objet de cette classe. Voici un exemple de ce qu'on peut faire ou non :
Les classes que j'ai pu croiser de ce type sont des implémentations d'interface, par exemple pour implémenter Iterator dans les Collection, ou les ActionListener en Swing.
public class A { private int x; class B { private int y; void f() { x=1; // possible y=2; // possible } } void g() { x=3; // possible y=4; // impossible B b = new B(); b.x=5; // impossible b.y=6; // possible } }
Les classes que j'ai pu croiser de ce type sont des implémentations d'interface, par exemple pour implémenter Iterator dans les Collection, ou les ActionListener en Swing.