Je n'aime pas trop la question 2, je trouve qu'elle est mal posée.
- D'abord, la classe s'appelle PropriétaireVoiture. C'est pas bien, ça correspond pas à ce qu'on lui demande de faire. Du coup il y a de quoi s'embrouiller. Elle devrait s'appeler UtiliserUneVoiture.
- Ensuite, elle demande que le résultat de chaque appel de méthode soit affiché. C'est impossible puisque deux des méthodes sont void et n'ont donc pas de résultat.
Mais bon, voyons ce qu'on peut faire.
* D'abord le nom de ta variable propriétaireVoiture va t'embrouiller. Il ne veut rien dire. C'est une variable dans laquelle il y a une Voiture. Donc il faut que ce soit un nom de voiture.
Ça pourrait être
Voiture volvo = new Voiture();
ou
Voiture nissan = new Voiture();
ou
Voiture maVoiture = new Voiture();
ou même Voiture voiture = new Voiture(); avec un v minuscule, si tu n'as pas peur de te tromper.
Quelque chose comme ça, et ça ira déjà mieux.
* Ensuite on te demande d'appeler les méthodes de la classe Voiture.
... Et... Tu le fais pas. Pourquoi ? Essaie d'appeler les méthodes. Comme ça, pour voir, essaie.
Si ça t'embête parce que tu ne sais pas comment afficher les résultats, ne t'en occupe pas pour l'instant. Commence d'abord par appeler les méthodes. Quand ce sera fait, on s'occupera de voir ce qu'il faut afficher et comment.
je sais même pas si ma classe "Voiture" est juste.
Elle n'a pas de bug, mais elle est pas bien faite, difficile à comprendre.
- les variables membres
1 2
| int distance;
int durée; |
elles ne devraient pas exister.
-- Pour int durée, ça se voit je trouve. Tu l'as écrit deux fois. C'est pas normal voyons, il faut l'écrire une seule fois.
int durée est le paramètre de la méthode rouler(). Ce n'est pas autre chose que ça. Donc ça ne devrait pas être écrit ailleurs que comme paramètre de la méthode rouler.
-- Pour int distance c'est simplement qu'elle n'a pas besoin d'être variable membre.
Pourquoi ? Parce que :
--- Elle ne sert que pour la méthode rouler(). Rien d'autre ne s'y intéresse.
--- On ne cherche pas à mémoriser sa valeur entre deux appels à rouler(). À chaque fois qu'on appelle rouler(), la valeur précédente de int distance ne nous intéresse pas. On veut seulement lui donner une nouvelle valeur.
Ça devrait donc être une variable locale, écrite à l'intérieur de la méthode rouler().
Comme ça : int distance = durée * 60;.
- "Je mets le contact" prend un s. Verbe mettre, première personne du singulier au présent de l'indicatif .
Partager