Bonjour à tous !
Pour apprendre Java je suis entrain d'essayer de comprendre la notion de polymorphisme en Java et de la mettre en œuvre. Si j'ai bien compris les choses ... le polymorphisme peut être généré par le biais de l'héritage , des interfaces, ou de leurs utilisations cumulées ...
J'ai donc crée une interface nommée Véhicule avec des méthodes rouler et freiner qu'il faut définir lorsque l'on souhaite les utiliser. La classe Auto implémente l'interface Vehicule. La classe Velo implémente elle aussi l'interface Véhicule.
En théorie, je devrais pouvoir ainsi disposer de comportements différents pour chaque objet ... mais je coince sur la partie Lanceur qui comprend la méthode Main et je ne parviens pas à trouver la bonne syntaxe.
Je vous remercie pour vos conseils et vos idées.
Jean-Marc
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 public interface Vehicule { public void rouler(); public void freiner();
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 public class Auto implements Vehicule { public Auto(Vehicule a) System.out.println("Je suis une auto"); } public void rouler(){System.out.println("Je suis une auto je roule vite");} public void freiner(){System.out.println("Je suis une auto je freine fort");} }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 public class Velo implements Vehicule { public Velo(Vehicule v) { System.out.println("Je suis un vélo"); } public void rouler(){System.out.println("Je suis un velo je roule doucement");} public void freiner(){System.out.println("Je suis velo je freine lentement");} }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 public class Lanceur { public static void main ( String args[]){ // Auto a= new Vehicule (new Auto()); // Velo v=new Vehicule(new Velo()); } }
Partager