Déportation des méthodes startCar, stopCar et changeSpeed vers la classe Car
This commit is contained in:
parent
20f99646df
commit
1f0e3fb296
5 changed files with 43 additions and 27 deletions
BIN
carApp/.DS_Store
vendored
BIN
carApp/.DS_Store
vendored
Binary file not shown.
BIN
carApp/src/.DS_Store
vendored
BIN
carApp/src/.DS_Store
vendored
Binary file not shown.
|
|
@ -4,15 +4,15 @@ public class Application {
|
||||||
private static final int REDUCED_SPEED = 30;
|
private static final int REDUCED_SPEED = 30;
|
||||||
|
|
||||||
public static void main(final String[] args) {
|
public static void main(final String[] args) {
|
||||||
Car maVoiture = new Car("Sedan", "Bleu");
|
Car myCar = new Car("Sedan", "Bleu");
|
||||||
Driver moi = new Driver("John", AGE);
|
Driver me = new Driver("John", AGE);
|
||||||
|
|
||||||
moi.startCar(maVoiture);
|
me.startCar(myCar);
|
||||||
maVoiture.accelerate();
|
myCar.accelerate();
|
||||||
moi.changeSpeed(maVoiture, INITIAL_SPEED);
|
me.changeSpeed(myCar, INITIAL_SPEED);
|
||||||
maVoiture.slowDown();
|
myCar.slowDown();
|
||||||
moi.changeSpeed(maVoiture, REDUCED_SPEED);
|
me.changeSpeed(myCar, REDUCED_SPEED);
|
||||||
moi.stopCar(maVoiture);
|
me.stopCar(myCar);
|
||||||
System.out.println("fini");
|
System.out.println("fini");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -38,4 +38,29 @@ public class Car {
|
||||||
System.out.println("Couleur : " + couleur);
|
System.out.println("Couleur : " + couleur);
|
||||||
System.out.println("Vitesse actuelle : " + vitesse);
|
System.out.println("Vitesse actuelle : " + vitesse);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void startCar(final Driver driver) {
|
||||||
|
if (driver.isAdult()) {
|
||||||
|
System.out.println(driver.getNom() + " démarre la voiture.");
|
||||||
|
} else {
|
||||||
|
System.out.println("Le conducteur n'est pas assez âgé pour conduire.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void stopCar(final Driver driver) {
|
||||||
|
System.out.println(driver.getNom() + " arrête la voiture.");
|
||||||
|
}
|
||||||
|
|
||||||
|
public void changeSpeed(final Driver driver, final int nouvelleVitesse) {
|
||||||
|
System.out.println(driver.getNom() + " change la vitesse de la voiture à " + nouvelleVitesse);
|
||||||
|
if (this.getSpeed() >= nouvelleVitesse) {
|
||||||
|
while (this.getSpeed() > nouvelleVitesse) {
|
||||||
|
this.slowDown();
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
while (this.getSpeed() < nouvelleVitesse) {
|
||||||
|
this.accelerate();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -12,28 +12,19 @@ public class Driver {
|
||||||
return age >= ADULT_AGE;
|
return age >= ADULT_AGE;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void startCar(final Car voiture) {
|
public String getNom() {
|
||||||
if (isAdult()) {
|
return this.nom;
|
||||||
System.out.println(nom + " démarre la voiture.");
|
|
||||||
} else {
|
|
||||||
System.out.println("Le conducteur n'est pas assez âgé pour conduire.");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void stopCar(final Car voiture) {
|
public void startCar(final Car car) {
|
||||||
System.out.println(nom + " arrête la voiture.");
|
car.startCar(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void changeSpeed(final Car voiture, final int nouvelleVitesse) {
|
public void stopCar(final Car car) {
|
||||||
System.out.println(nom + " change la vitesse de la voiture à " + nouvelleVitesse);
|
car.stopCar(this);
|
||||||
if (voiture.getSpeed() >= nouvelleVitesse) {
|
}
|
||||||
while (voiture.getSpeed() > nouvelleVitesse) {
|
|
||||||
voiture.slowDown();
|
public void changeSpeed(final Car car, final int newSpeed) {
|
||||||
}
|
car.changeSpeed(this, newSpeed);
|
||||||
} else {
|
|
||||||
while (voiture.getSpeed() < nouvelleVitesse) {
|
|
||||||
voiture.accelerate();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Loading…
Add table
Reference in a new issue