

Une méthode surchargeable permet de transformer le comportement d'une classe en fonction de la classe utilisée.
Une méthode virtuelle permet la personnalisation par l'héritage.
Seulement le développeur doit obliger à utiliser la plupart des méthodes de son composant sinon il ne sert à rien.
Une méthode statique sera appelée en fonction de la classe utilisée. On pourra créer la même méthode dans le descendant sans qu'elle soit utilisée dans l'ancêtre.