Personalizza una sottoclasse
L'ereditarietà è potente perché ti permette di riutilizzare e personalizzare il codice senza riscrivere quello esistente. Chiamando i metodi della classe genitore all'interno della classe figlia, riutilizzi tutto il codice in quei metodi, mantenendo il tuo codice conciso e gestibile.
In questo esercizio continuerai a lavorare con la classe Manager, che eredita dalla classe Employee. Aggiungerai un costruttore che si basa su quello di Employee, accettando un argomento aggiuntivo per specificare il progetto su cui sta lavorando il manager.
Una versione semplificata della classe Employee, insieme all'inizio della classe Manager che hai creato in precedenza, è già disponibile in script.py.
Questo esercizio fa parte del corso
Introduzione alla programmazione orientata agli oggetti in Python
Istruzioni dell'esercizio
- Aggiungi un costruttore a
Managerche accettiname,salary(valore predefinito50000) eproject(valore predefinitoNone). - All'interno del costruttore di
Manager, chiama il costruttore della classeEmployeefornendo i tre argomenti definiti nel costruttore della classe genitore. - Usa
selfper assegnare l'attributo pertinente all'argomentoproject.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
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)