Formation
90 min de lecture
Programmation orientΓ©e objet
π¦ HΓ©ritage et polymorphisme
Objectifs d'apprentissage
π― Objectifs :\n
1Comprendre l'hΓ©ritage\n2. Utiliser super()\n3. RedΓ©finir des mΓ©thodes\n4. Comprendre le polymorphisme
Introduction
π L'hΓ©ritage permet de crΓ©er une hiΓ©rarchie entre classes.
Contenu thΓ©orique
HΓ©ritage :\n
PYTHON
\nclass Animal:\n def parler(self):\n return "..."\n\nclass Chien(Animal):\n def parler(self):\n return "Wouaf !"\n\nclass Chat(Animal):\n def parler(self):\n return "Miaou !"\nExemples pratiques
π» Exemple : HiΓ©rarchie Animal\n
PYTHON
\nclass Animal:\n def __init__(self, nom):\n self.nom = nom\n \n def parler(self):\n raise NotImplementedError\n\nclass Chien(Animal):\n def parler(self):\n return f"{self.nom} dit: Wouaf !"\n\nclass Chat(Animal):\n def parler(self):\n return f"{self.nom} dit: Miaou !"\n\nanimaux = [Chien("Rex"), Chat("Felix")]\nfor a in animaux:\n print(a.parler())\nBonnes pratiques
1Utiliser super() pour appeler le parent\nβ
2. Respecter le principe de substitution de Liskov\nβ
3. Γviter l'hΓ©ritage multiple complexe
Pièges à éviter
Oublier d'appeler super().__init__()\n
Toujours appeler le constructeur parent
RΓ©sumΓ©
HΓ©ritage : classe enfant hΓ©rite de parent\nβ
Polymorphisme : mΓͺme mΓ©thode, comportement diffΓ©rent\nβ
super() : appel au parent
Ressources supplΓ©mentaires
π docs.python.org/3/tutorial/classes.html#inheritance