salut , je veux savoir comment je peux récupérer le nom d' une instance d une classe?
j ai fais comme ca mais ca marche pas!
et merci en avance:)Code:
1
2
3 JPanel jp=new JPanel(); System.out.println(jp.toString());
Version imprimable
salut , je veux savoir comment je peux récupérer le nom d' une instance d une classe?
j ai fais comme ca mais ca marche pas!
et merci en avance:)Code:
1
2
3 JPanel jp=new JPanel(); System.out.println(jp.toString());
mais c'est "jp" le nom de ton instance!Citation:
System.out.println(jp.toString());
Qu'est ce que tu veux en fait?
dans ce cas c est fixe( c une seule instance) supposant j ai un tableau des instances et je veux savoir le nom de chaque panel comment faire? :?
mitnick2006 >> justement, il veut le nom, donc "jp".
Sinon, au lieu de faire un tableau, tu fais une HashMap, avec comme keys les noms, et comme values les instances.
si ensuite tu fais :Code:
1
2
3
4 HashMap<String, JPanel> panelsMap = new HashMap<String, JPanel>(); JPanel nom = new JPanel(); panelsMap.put("nom", nom);
ca te retourne ton JPanel jp.Code:panelsMap.get("nom");
ou alors tu fais une classe qui extends JPanel, et tu rajoutes une methode setName(String name), et une methode getName().
ok merci je vais essayer ca :mouarf:
tous d'abord ,cette instance doit avoir la propriete Name ,en plus la methode qui la retourner .dans ton exemple le code sera:
tu trouve plus d'info sur our website ,boncourage.Code:
1
2 JPanel jp=new JPanel(); jp.getName();
Salut,
en fait une instance n'a pas vraiment de nom à proprement parler si tu ne lui en donnes pas un explicitement comme attribut.
En faisant :, ce que tu affiches, c'est l'identifiant de l'instance.Code:
1
2 JPanel jp=new JPanel(); System.out.println(jp.toString());
Par-contre, tu peux avoir le nom de la classe de l'instance en faisant :
Code:
1
2 JPanel jp=new JPanel(); System.out.println(jp.getClass().getName());
Tu peux aussi faire ceci :
Tu crée ton objet avec un constructeur ayant au moins un argument de type String.
Exemple :
Ta classe dérive de JPanel. Exemple : class panneaux extends JPanel
et cette classe possède un champ appelé nom.
Le constructeur de cette calsse est :
Code:
1
2
3
4
5 public Panneaux(String nom) { this.nom = nom; }
Panneaux pa = new JPanel("panneau A");
Panneaux pb = new JPanel("panneau B");
Panneaux pc = new JPanel("panneau C");
Puis tu récupère le nom du panneau en faisant :
Code:
1
2 System.out.println(pa.nom);