diff --git a/com/humanbooster/exercices/Vehicule.java b/com/humanbooster/exercices/Vehicule.java new file mode 100644 index 0000000..14585c7 --- /dev/null +++ b/com/humanbooster/exercices/Vehicule.java @@ -0,0 +1,104 @@ +package com.humanbooster.exercices; + +/** + * La classe Vehicule est une classe abstraite qui représente un véhicule. + * Elle contient des attributs communs à tous les véhicules, tels que la marque, le modèle et la vitesse maximale. + */ +public abstract class Vehicule { + + protected String marque; + protected String modele; + protected int vitesseMax; + + /** + * Constructeur de la classe Vehicule + * + * @param marque La marque du véhicule + * @param modele Le modèle du véhicule + * @param vitesseMax La vitesse maximale du véhicule + */ + public Vehicule(String marque, String modele, int vitesseMax) { + this.marque = marque; + this.modele = modele; + this.vitesseMax = vitesseMax; + } + + /** + * Méthode pour obtenir la marque du véhicule + * @return La marque du véhicule + */ + public String getMarque() { + return marque; + } + + /** + * Méthode pour définir la marque du véhicule + * @param marque La marque du véhicule + */ + public void setMarque(String marque) { + this.marque = marque; + } + + /** + * Méthode pour obtenir le modèle du véhicule + * @return Le modèle du véhicule + */ + public String getModele() { + return modele; + } + + /** + * Méthode pour définir le modèle du véhicule + * @param modele Le modèle du véhicule + */ + public void setModele(String modele) { + this.modele = modele; + } + + /** + * Méthode pour obtenir la vitesse maximale du véhicule + * @return La vitesse maximale du véhicule + */ + public int getVitesseMax() { + return vitesseMax; + } + + /** + * Méthode pour définir la vitesse maximale du véhicule + * @param vitesseMax La vitesse maximale du véhicule + */ + public void setVitesseMax(int vitesseMax) { + this.vitesseMax = vitesseMax; + } + + /** + * Méthode pour afficher les informations du véhicule + */ + public void afficherInfos() { + System.out.println("\nMarque : " + marque); + System.out.println("Modèle : " + modele); + System.out.println("Vitesse max : " + vitesseMax + " km/h"); + System.out.println("----------------------------------"); + } + + /** + * Méthode abstraite pour démarrer le véhicule + */ + public abstract void demarrer(); + + /** + * Méthode abstraite pour faire accélérer le véhicule + */ + public abstract void accelerer(); + + /** + * Méthode abstraite pour faire freiner le véhicule + */ + public abstract void freiner(); + + /** + * Méthode abstraite pour obtenir le type de véhicule + * @return Le type de véhicule + */ + public abstract String getTypeVehicule(); +}