bonjour à tout le monde,
est ce qu'une classe en JAVA peut contenir une autre classe? autrement dit est ce que je peux avoir un lien de composition entre la classe et elle meme?
merci et bonne journée
bonjour à tout le monde,
est ce qu'une classe en JAVA peut contenir une autre classe? autrement dit est ce que je peux avoir un lien de composition entre la classe et elle meme?
merci et bonne journée
En java un classe peut en effet contenir une autre classe. Mais cela n'implique pas forcément qu'il y aura une relation de composition entre la classe et les classe internes.
merci bien pour la réponse,
donc si je mets un lien de composition entre classe et elle meme, c'est faux d'un point de vue conceptuel?
merci encore
Tu peux très bien avoir une référence d'une classe X comme membre d'une classe X, ça ne pose aucun souci.
Par exemple, tu pourrais vouloir faire une classe qui soit elle-même une liste chaînée, ie. qui contient des références vers l'instance précédente et/ou suivante de la même classe
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 public class MaClasse { // pour générer un ID unique: private static int uniqueIdCounter = 0; public int instanceId; // la référence vers l'instance suivante de ma liste: public MaClasse nextInstance = null; public MaClasse(MaClasse previousInList) { instanceId = uniqueIdCounter++; if (previousInList != null) previousInList.nextInstance = this; } public static void main(String[] args) { // on créé les instances et la liste: MaClasse x1, x2, x3, x4; x1 = new MaClasse(null); // x1 est le premier de la liste x2 = new MaClasse(x1); // x2 à la suite de x1 x3 = new MaClasse(x2); // x3 à la suite de x2 x4 = new MaClasse(x3); // x4 à la suite de x3 // on itère sur notre liste: MaClasse it = x1; while (it != null) { System.out.println("instance = "+it.instanceId); it = it.nextInstance; } } }
Tu depend ce que tu entends par composition.
Tu peux faire comme l'indique nouknouk, à moins que ce que tu cherches c'est de l'agrégation.
merci pour vous tous,
ce que je veux savoir au juste le voilà:
j'ai un besoin qui se résout en ajoutant un lien de composition dans le metamodele JAVA entre le concept classe et lui meme donc est ce que c correcte ca?
merci
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager