Bonjour à tous.
Je voudrais faire quelque chose comme ça :
En français :
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 public abstract class Vehicule { public abstract bool peutRouler(); } public class Voiture : Vehicule { public bool peutRouler(bool feuVert) { if (feuVert == true) return true; else return false; } } public class Train : Vehicule { public bool peutRouler(bool conducteurABord, bool passagersABord) { if ((conducteurABord == true) && (passagersABord == true)) return true; else return false; } }
J'ai une classe de base qui impose certaines méthodes comme par exemple ici est-ce que le véhicule peut rouler.
Le problème, c'est que la réponse à cette question varie selon la classe fille. Donc, la méthode qui répond à la question est susceptible de prendre diverses valeurs en paramètre... et ne respecte du coup plus la signature de la classe de base...
Comment implémenter ce genre de chose de manière élégante ?
Je crois que mon exemple est clair... même s'il est assez simpliste (donc pas de remarques sur l'algorithmie svp)
Partager