Personalizează o subclasă
Moștenirea este un mecanism puternic, deoarece îți permite să reutilizezi și să personalizezi codul fără a rescrie ce există deja. Apelând metodele clasei părinte din interiorul clasei copil, refolosești tot codul din acele metode, păstrând codul concis și ușor de gestionat.
În acest exercițiu, vei continua să lucrezi cu clasa Manager, moștenită din clasa Employee. Vei adăuga un constructor care extinde constructorul clasei Employee, acceptând un argument suplimentar ce îți permite să specifici proiectul la care lucrează managerul.
O versiune simplificată a clasei Employee, precum și începutul clasei Manager pe care ai creat-o anterior, au fost deja incluse în script.py.
Acest exercițiu face parte din cursul
Introducere în Programarea Orientată pe Obiecte în Python
Instrucțiuni pentru exercițiu
- Adaugă un constructor la clasa
Managercare acceptăname,salary(valoare implicită50000) șiproject(valoare implicităNone). - În interiorul constructorului clasei
Manager, apelează constructorul claseiEmployeefurnizând cele trei argumente definite în constructorul clasei părinte. - Folosește
selfpentru a atribui atributul corespunzător argumentuluiproject.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
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)