Exercice 3: Partie 4 constantes ajoutées dans la classe Voiture34. Instanciation des objets et affichage des caractéristiques.

This commit is contained in:
Yohan Boujon 2023-10-16 09:09:55 +02:00 committed by yohan.boujon
parent 7aac690a58
commit 42120b1578
2 changed files with 101 additions and 0 deletions

27
src/exercice3part4.java Normal file
View file

@ -0,0 +1,27 @@
import partie3.Voiture34;
public class exercice3part4 {
public static void main(String[] args) {
Voiture34 voiture1 = new Voiture34();
voiture1.setNom("Renault");
voiture1.setPuissance(150);
voiture1.demarre(70);
Voiture34 voiture2 = new Voiture34();
voiture2.setNom("Peugeot");
voiture2.setPuissance(200);
voiture2.demarre(100);
// Affiche le nom et les stats des voitures créées
for(int i=0; i<Voiture34.getNbVoitures() ; i++)
{
printVoiture(Voiture34.getListeVoitures()[i]);
}
}
public static void printVoiture(Voiture34 v) {
if(v.getNom() != null)
{
System.out.println(v.getNom()+":\tPuissance: " + v.getPuissance() + "\tVitesse: " + v.getVitesse());
}
}
}

View file

@ -0,0 +1,74 @@
package partie3;
public class Voiture34 {
int puissance = 10;
int vitesse = 0;
boolean estDemarre = false;
String nom;
// Variables statiques, accessibles partout
private static int nbVoitures = 0;
private static Voiture34[] listeVoitures = new Voiture34[10];
public Voiture34() {
listeVoitures[nbVoitures] = this;
nbVoitures++;
}
public Voiture34(int p) {
this();
puissance = p;
}
public int getPuissance() {
return this.puissance;
}
public int getVitesse() {
return this.vitesse;
}
public static int getNbVoitures() {
return nbVoitures;
}
public static Voiture34[] getListeVoitures() {
return listeVoitures;
}
public String getNom(){
return this.nom;
}
public boolean isDemarre() {
return this.estDemarre;
}
public void setPuissance(int p) {
this.puissance = p;
}
public void setVitesse(int v) {
if (v <= this.puissance) {
this.vitesse = v;
} else {
System.out.println("La vitesse(" + v + ") est supérieure à la puissance(" + this.puissance + ").");
}
}
public void setNom(String n) {
this.nom = n;
}
public void demarre() {
this.estDemarre = true;
}
public void demarre(int v) {
if (v <= this.puissance) {
this.vitesse = v;
this.estDemarre = true;
} else {
System.out.println("La vitesse(" + v + ") est supérieure à la puissance(" + this.puissance + ").");
}
}
}