0% ont trouvé ce document utile (0 vote)
18 vues2 pages

Héritage

Le polymorphisme en programmation orientée objet permet à une méthode d'avoir un comportement différent selon l'objet sur lequel elle est appelée. Par exemple, une méthode dessiner() peut produire des résultats variés selon qu'elle est appliquée à un Cercle, un Carré ou un Triangle. Ce concept, souvent réalisé par l'héritage et l'implémentation d'interfaces, rend le code plus flexible et facile à maintenir en permettant de gérer des objets de manière générique.

Transféré par

simeonbazana8
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOC, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
18 vues2 pages

Héritage

Le polymorphisme en programmation orientée objet permet à une méthode d'avoir un comportement différent selon l'objet sur lequel elle est appelée. Par exemple, une méthode dessiner() peut produire des résultats variés selon qu'elle est appliquée à un Cercle, un Carré ou un Triangle. Ce concept, souvent réalisé par l'héritage et l'implémentation d'interfaces, rend le code plus flexible et facile à maintenir en permettant de gérer des objets de manière générique.

Transféré par

simeonbazana8
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOC, PDF, TXT ou lisez en ligne sur Scribd

Le terme polymorphisme vient du grec et signifie "plusieurs formes".

En programmation orientée objet,


c'est l'un des concepts les plus puissants.

Pour faire simple, le polymorphisme, c'est la capacité d'un objet à prendre plusieurs formes ou, plus
précisément, la capacité d'une méthode (une fonction) à avoir un comportement différent selon l'objet
sur lequel elle est appelée.

Imaginez que vous ayez une méthode dessiner().

* Si vous l'appelez sur un objet Cercle, il va dessiner un cercle.

* Si vous l'appelez sur un objet Carré, il va dessiner un carré.

* Si vous l'appelez sur un objet Triangle, il va dessiner un triangle.

C'est toujours la même méthode (dessiner), mais son résultat est différent en fonction de l'objet qui la
"possède". Le polymorphisme permet d'utiliser une seule interface (le nom de la méthode) pour gérer
différentes implémentations.

Comment cela se concrétise-t-il ?

Le polymorphisme est généralement réalisé par l'héritage et l'implémentation d'interfaces.

Prenons l'exemple d'une classe de base Animal qui possède une méthode faireDuBruit().

Des classes dérivées, comme Chien, Chat et Vache, héritent de cette classe.

Chacune de ces classes filles peut redéfinir (ou "surcharger") la méthode faireDuBruit() pour qu'elle
corresponde à son propre comportement :

* La méthode faireDuBruit() du Chien affichera "Woof !".

* La méthode faireDuBruit() du Chat affichera "Miaou !".

* La méthode faireDuBruit() de la Vache affichera "Meuh !".

Si vous avez une liste d'animaux de types différents, vous pouvez simplement parcourir cette liste et
appeler la méthode faireDuBruit() sur chaque animal, sans avoir besoin de vérifier de quel type d'animal
il s'agit. Le système s'occupera d'appeler la bonne version de la méthode de manière automatique.

liste_animaux = [Chien(), Chat(), Vache()]

for animal in liste_animaux:

[Link]() # Le polymorphisme opère ici !


Ce qui sera affiché sera :

Woof !

Miaou !

Meuh !

Le polymorphisme rend le code plus flexible, plus propre et plus facile à maintenir, car il permet de gérer
des objets de manière générique sans se soucier de leurs spécificités individuelles.

Vous aimerez peut-être aussi