bonjour voici mon code
méthode main
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 package fr.piter.heritage; public class Moto extends Vehicule { //attributs private boolean sidecar = false; //constructeur public Moto(String nom, double vitesse, int poids, int niveauCarburant) { super(nom, vitesse, poids, niveauCarburant); } public Moto(String nom, double vitesse, int poids, int niveauCarburant,boolean sideCar) { super(nom, vitesse, poids, niveauCarburant); this.sidecar = sidecar; } @Override public String toString() { if (sidecar = true) { return super.toString()+" , moto avec sidecar"; } return super.toString()+" moto"; } }
resultat
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Moto m1 = new Moto("Honda", 200.0, 250, 15, true); Moto m2 = new Moto("Kawasaki", 280.0, 180, 10);
Pourquoi quand je crèe un objet moto sans sidecar j ai toujours" moto avec sidecar" ,pourtant par défaut sidecar est bien initialisé à false ? alors dans ma méthode toString de devrais-je pas avoir la réponse sidecar= "false" donc (return super.toString()+"moto" ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Honda -> vitesse Max = 200.0 km/h, poids = 250 kg , moto avec sidecar Kawasaki -> vitesse Max = 280.0 km/h, poids = 180 kg , moto avec sidecar
j ai essayé d'écrire dans le premier constructeur à la fin this.sidecar = false pour être sur que sidecar est bien initialisé à false mais rien n'y fait ?
merci pour vos réponses,
Partager