Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentes Révision précédente | |||
| sio:bloc2:2a:td0 [2026/08/25 15:44] – [Héritage] jcheron | sio:bloc2:2a:td0 [2026/08/26 10:31] (Version actuelle) – jcheron | ||
|---|---|---|---|
| Ligne 349: | Ligne 349: | ||
| < | < | ||
| + | ===== Evolutions ===== | ||
| + | ==== Encapsulation ==== | ||
| + | |||
| + | * Ajoutez à Pompier un attribut privé dateEmbauche: | ||
| + | * Ajoutez une méthode distanceVers(autre: | ||
| + | |||
| + | ==== Héritage ==== | ||
| + | Ajoutez à PompierProfessionnel une redéfinition de méthode manquante : une méthode calculerSalaireMensuel(): | ||
| + | |||
| + | * PompierProfessionnel → salaireBase + prime d' | ||
| + | * PompierVolontaire → heuresEffectueesMoisCourant * tauxHoraire (il faudra ajouter tauxHoraire) | ||
| + | |||
| + | Créer une classe Officier héritant de PompierProfessionnel avec : | ||
| + | * un attribut primeCommandement: | ||
| + | * une redéfinition de calculerSalaireMensuel() qui appelle super.calculerSalaireMensuel() et ajoute la prime | ||
| + | * une redéfinition de toString() qui appelle super.toString() et ajoute la mention du grade d' | ||
| + | |||
| + | |||
| + | Ajoutez à Pompier une méthode abstraite peutIntervenirSur(type: | ||
| + | |||
| + | * PompierProfessionnel → toujours true | ||
| + | * PompierVolontaire → true sauf pour FUITE_GAZ (compétence non acquise, à simuler par une contrainte simple) | ||
| + | * Officier → toujours true, et en plus logue dans la console qu'un officier prend le commandement | ||
| + | |||
| + | Utilisez cette méthode dans Intervention.ajouterPompier() pour refuser l' | ||