Table des matières:
Définition - Que signifie remplacer?
La substitution est une fonctionnalité de programmation orientée objet qui permet à une classe enfant de fournir une implémentation différente pour une méthode qui est déjà définie et / ou implémentée dans sa classe parente ou l'une de ses classes parentes. La méthode remplacée dans la classe enfant doit avoir le même nom, la même signature et les mêmes paramètres que celle de sa classe parente.
Le remplacement permet de gérer différents types de données via une interface uniforme. Par conséquent, une méthode générique pourrait être définie dans la classe parente, tandis que chaque classe enfant fournit son implémentation spécifique pour cette méthode.
Techopedia explique le dépassement
La version de la méthode invoquée est déterminée par l'objet classe. Si l'objet de classe enfant est utilisé pour appeler la méthode, la version de classe enfant de la méthode est exécutée. Si l'objet de classe parent est utilisé pour appeler la méthode, la version de classe parent de la méthode est exécutée. La méthode invoquée est déterminée au moment de l'exécution, tandis qu'en surcharge, la méthode invoquée est déterminée au moment de la compilation.
C ++ et C # prennent en charge la substitution en utilisant explicitement les mots clés 'override' et 'virtual'. Java utilise le mot clé 'super' pour appeler la méthode superclasse. Cependant, C ++ n'a pas le super mot clé et utilise à la place le nom de la classe de base suivi de l'opérateur de résolution de portée (: :).
