Bonjour,
J'aimerai savoir ce qui est le mieux (au sens plus propre, performant, intelligent, etc...) de faire pour ce cas de figure :
par exemple, on prend une classe Point, on veux faire une methode translater()
est ce que le mieux est que la methode ne retourne rien (void) ou retourne le point translaté ?
genre :
OU
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 public void translater(double x, double y){ this.x += x; this.y += y; }
Est ce que "return this" est correct ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 public Point translater(double x, double y){ this.x += x; this.y += y; return this; }
Pour moi, l'avantage de la seconde solution, c'est qu'on peut dans la methode appelante, enchainer les méthodes sur l'objet, genre :
Alors que dans la première solution, on est obligé de faire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 monPoint.translater(1,3).afficheCoordonnees();
Mais qu'est ce qu'est le mieux ? Ca dépend de ce qu'on veux faire ? Ce que je fais est complètement faux ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 monPoint.translater(1,3); monPoint.afficheCoordonnees();
Merci
Partager