Bonjour,
J'ai un problème pour lequel je n'arrive pas à mettre en forme une solution propre.
J'ai une classe abstraite mère "ComposantGraphique". Des classes filles "Point", "Droite", "Segment", etc.
J'ai une fonction :
En en gros, je dois renvoyer les intersections d'un composant avec un autre.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 public abstract class ComposantGraphique { public abstract LinkedList<Point> pointDIntersection(ComposantGraphique cg); }
Dans chaque classe fille, je voudrais donc pouvoir décliner les cas :
pointDIntersection(Droite d)
pointDIntersection(Segment AB)
etc
Comment dois-je faire si je veux éviter de passer par une liste de instanceof dans chaque classe fille :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 class Droite extends ComposantGraphique { public LinkedList<Point> pointDIntersection(ComposantGraphique cg) { if(cg instanceof Droite {pointDIntersection((Droite)cg);} if(cg instanceof Segment {pointDIntersection((Segment)cg);} ... } }
Partager