Base Classes et Sous-classes
Glissez pour afficher le menu
L'implémentation de l'héritage en Python se fait à l'aide des classes de base (parents) et des sous-classes (enfants).
Une classe de base définit des propriétés et comportements généraux, tandis qu'une sous-classe hérite de ces caractéristiques et peut les étendre avec les siennes.
123456789101112131415161718192021222324252627282930class Employee: def __init__(self, name, salary): self.name = name self.salary = salary def get_info(self): return f"{self.name}, {self.salary}" class Manager(Employee): def __init__(self, name, salary, department): super().__init__(name, salary) self.department = department def get_info(self): return f"{super().get_info()}, {self.department}" class Developer(Employee): def __init__(self, name, salary, language): super().__init__(name, salary) self.language = language def get_info(self): return f"{super().get_info()}, {self.language}" print(Employee("Anna", 2000).get_info()) print(Manager("Mark", 3500, "IT").get_info()) print(Developer("Lena", 3000, "Python").get_info())
Employee est la classe de base. Elle stocke les données partagées par tous les employés. Manager et Developer sont des sous-classes de Employee. Elles héritent automatiquement de tout ce qui provient de la classe de base, ce qui évite de réécrire le même code.
L'appel à super() exécute le constructeur de la classe de base, de sorte que name et salary sont correctement initialisés. Chaque sous-classe ajoute ensuite ses propres données :
ManagerajoutedepartmentDeveloperajoutelanguage
Les deux sous-classes redéfinissent également get_info(). Elles réutilisent la version de la classe de base avec super().get_info() puis complètent le résultat avec leurs propres informations.
Cela fait de la classe de base la fondation, et de la sous-classe l’implémentation spécialisée qui ajoute de la flexibilité.
Merci pour vos commentaires !
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion