117Fermer119
SouaneLe 25/04/2010 à 07:21
Kevin Kofler (./117) :
(ça commence à devenir pratique quand tu as 100 différentes sous-classes, et tu ne vas pas t'amuser à faire des trucs du genre "if (object == (Object) Shape1 OR object == (Object) Shape2 OR ... OR object == (Object) Shape100 trinon.gif )
En revanche, if (object instanceof Circle) marche plutôt bien. (En C++, on utiliserait qobject_cast ou dynamic_cast.) Il y a des fois où c'est plus adapté que les méthodes virtuelles. Mais c'est moins "objet".

Certes, certes smile Mais je voulais plutôt mettre en avant le fait qu'en utilisant une superclasse (abstraite ou non, d'ailleurs) tu n'as pas besoin de mentionner explicitement chacune des sous-classe. Ce qui est quand même mieux (après, en effet, instanceof marche très bien aussi hehe)