bonjour voici mon code
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";	
		}
 
}
méthode main
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);
resultat
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
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" ?
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,