Aller au contenu
uencoder

Polymorphism

Le polymorphisme permet à la même interface d'opérer sur des instances de types différents, sous deux formes : statique (surcharge/génériques) et dynamique (redéfinition/méthodes virtuelles).

Objectif

Traiter différents types via une interface unifiée, améliorant la réutilisation et l'extensibilité du code.

Mécanisme

Polymorphisme statique : surcharge (même nom, paramètres différents) et génériques (instanciés à la compilation). Polymorphisme dynamique : redéfinition (la sous-classe remplace la méthode parente) dispatchée via des vtables. Go utilise des interfaces à implémentation implicite ; Rust des objets trait.

Cas d’usage

  • Conception orientée objet
  • Abstraction d'interfaces
  • Réutilisation de code

Termes associés

References