Sélection simple
# Sélection simple

En programmation orientée objet, la sélection simple (ou sélection de méthode à aiguillage simple) traduit le fait qu'un seul argument est utilisé par le compilateur pour sélectionner la méthode à appeler. Exemple (donné en C++) :

On pourrait s'attendre à ce que l'expression c->f(myD) appelle la méthode C::f(Derived*). Il n'en est rien. En fait le compilateur ne s'est basé que sur le type réel de c (C*), mais n'a pas cherché à connaître le type réel de myD (Derived), dont il n'a retenu que le type apparent (D*). Ainsi, le compilateur a choisi la méthode C::f(D*). Ce comportement est implémenté en C++, Java et bien d'autres langages. Pour pallier cela, il faut utiliser le design pattern visiteur en C++, ou l'introspection en Java.

