Ereditarietà dei metodi
In questo esercizio estenderai la classe Manager (che eredita dalla classe Employee), creata nell'esercizio precedente, aggiungendo un metodo chiamato give_raise(). Sarà simile al metodo con lo stesso nome nella classe Employee, ma includerà un argomento aggiuntivo chiamato bonus.
La classe Manager che hai creato in precedenza è stata fornita per te in script.py.
Questo esercizio fa parte del corso
Introduzione alla programmazione orientata agli oggetti in Python
Istruzioni dell'esercizio
- Aggiungi un metodo
give_raise()aManagerche accetti gli stessi parametri diEmployee.give_raise(), più un argomentobonuscon valore predefinito1.05(bonus del 5%). - All'interno del metodo, calcola
new_amountmoltiplicandoamountperbonus. - All'interno del metodo, usa il metodo di
Employeeper aumentare lo stipendio dinew_amount.
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):
def display(self):
print("Manager ", self.name)
def __init__(self, name, salary=50000, project=None):
Employee.__init__(self, name, salary)
self.project = project
# Add a give_raise method
____:
____
____
mngr = Manager("Ashta Dunbar", 78500)
mngr.give_raise(2000, bonus=1.03)
print(mngr.salary)