Bonjour ,
Je veux faire une composition entre une Voiture et un Moteur.
est ce correct ?
Code:
1
2
3
4
5
6
7 class Voiture { public Moteur leMoteur; Voiture(){ leMoteur=new Moteur(); } }
d'avance merciCode:
1
2 class Moteur{ }
Version imprimable
Bonjour ,
Je veux faire une composition entre une Voiture et un Moteur.
est ce correct ?
Code:
1
2
3
4
5
6
7 class Voiture { public Moteur leMoteur; Voiture(){ leMoteur=new Moteur(); } }
d'avance merciCode:
1
2 class Moteur{ }
jusque là c'est correct
ta question concerne la syntaxe des classes ou les regles de la POO.
Le mieux est de declarer leMoteur comme membre privé.
Il faut ausi faire attention au mot clé public devant le nom de la classe sutout si celle-ci fait partie d'un package. Ne pas le mettre revient à dire que la classe ne sera pas accessible de l'exterieur du package.Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 public class Voiture { private Moteur leMoteur; //------------------------ public Voiture() { leMoteur=new Moteur(); } //-------------------------- public Moteur getMoteur() { return leMoteur; } }
Merci pour ces informations mais pourquoi mettre private Moteur leMoteur;
et pas en public ?
ce n'est pas une composition en public ?
Les regles d'encapsulations l'exigent :D.
salut,
merci pour ta réponse. Je l'ai lu sur le private, mais je connais la visibilité des méthodes, attributs, mais je ne vois pas en quoi ce texte définisse de mettre private à la place de public.
Alors j'ai réfléchit que si ma classe serait une super classe ça serait pour que les sous classes ne puissent pas utiliser l'objet ?8-)