Formation 90 min de lecture Programmation orientΓ©e objet

πŸ“¦ HΓ©ritage et polymorphisme

Python & Data Science Chapitre : Programmation orientΓ©e objet Sous-chapitre : 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 !"\n

Exemples 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())\n

Bonnes 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