Voila, j'ai un gros probleme avec l'héritage d'une classe abstraite.
J'ai l'impression que c'est moi qui est pas compris quelque chose, mais j'arrive pas à voir quoi...
J'ai une classe abstraite Courbe qui me definie une ArrayList et des méthode pour la manipuler.
De cette classe hérite deux autre classe, CourbeMesure et CourbeGraph
Le probleme me vient de CourbeGraph dont voici le constructeur:
Code :
- public CourbeGraph(Courbe courbe, Graphics2D g2, Dimension dim){
- super();
- this.listePoint = courbe.getListePoint();
- this.dim = dim;
- this.g2 = g2;
- //Utilisé pour les tests:
- System.out.println("this :\n" +this.toString());
- System.out.println("courbe :\n" +courbe.toString());
- System.out.println("this.equals(courbe) :" +this.equals(courbe));
- // this.paint();
- this.addPoint(30,5);
- System.out.println("this :\n" +this.toString());
- System.out.println("courbe :\n" +courbe.toString());
|
(Cette classe possede une méthode paint() pour peindre la courbe dans le Graphics2D, mais est ignorée dans ce probleme)
L'ennui étant que si je fais une modification de l'objet CourbeGraph (this.addPoint(30,5), l'objet Courbe reçut en parametre est lui aussi modifié! Pourtant, ce ne sont pas les même objet (this.equals(courbe) : false)
Je me doute bien qu'il doit sagir d'une lacune de ma part, mais j'ai beau relire mes bouquin, j'arrive pas à comprendre...
Merci de votre aide
Message édité par blaise_laporte le 10-01-2006 à 17:10:34