Personnaliser une sous-classe
L’héritage est puissant, car il permet de réutiliser et de personnaliser du code sans réécrire l’existant. En appelant les méthodes de la classe parente depuis la classe enfant, vous réutilisez tout le code de ces méthodes, ce qui rend votre code concis et facile à maintenir.
Dans cet exercice, vous continuez à travailler avec la classe Manager, héritée de la classe Employee. Vous allez ajouter un constructeur qui s’appuie sur celui d’Employee, en acceptant un argument supplémentaire pour indiquer le projet sur lequel le manager travaille.
Une version simplifiée de la classe Employee, ainsi que le début de la classe Manager que vous avez créée précédemment, vous sont fournis dans script.py.
Cet exercice fait partie du cours
Introduction à la programmation orientée objet en Python
Instructions
- Ajoutez un constructeur à
Managerqui acceptename,salary(valeur par défaut50000) etproject(valeur par défautNone). - À l’intérieur du constructeur de
Manager, appelez le constructeur de la classeEmployeeen fournissant les trois arguments définis dans le constructeur de la classe parente. - Utilisez
selfpour affecter l’attribut approprié à l’argumentproject.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
class Employee:
def __init__(self, name, salary=30000):
self.name = name
self.salary = salary
def give_raise(self, amount):
self.salary += amount
class Manager(Employee):
# Add a constructor
def __init__(self, name, ____=____, ____=____):
# Call the parent's constructor
____.____(____, ____, salary)
# Assign project attribute
____.____ = ____
def display(self):
print("Manager ", self.name)