Přizpůsobení podtřídy
Dědičnost je mocný nástroj – umožňuje znovu využívat a přizpůsobovat kód, aniž bys musel/a přepisovat to, co už existuje. Voláním metod nadřazené třídy uvnitř podtřídy znovu používáš celý kód těchto metod, takže tvůj kód zůstává přehledný a snadno udržovatelný.
V tomto cvičení budeš pokračovat s třídou Manager, která dědí ze třídy Employee. Přidáš do ní konstruktor, který rozšiřuje konstruktor třídy Employee o další argument – projekt, na kterém daný manažer pracuje.
V souboru script.py najdeš zjednodušenou verzi třídy Employee a základ třídy Manager, kterou jsi vytvořil/a dříve.
Toto cvičení je součástí kurzu
Úvod do objektově orientovaného programování v Pythonu
Pokyny k cvičení
- Přidej do třídy
Managerkonstruktor, který přijímá argumentyname,salary(výchozí hodnota50000) aproject(výchozí hodnotaNone). - Uvnitř konstruktoru třídy
Managerzavolej konstruktor třídyEmployeea předej mu tři argumenty definované v konstruktoru nadřazené třídy. - Pomocí
selfpřiřaď odpovídající atribut k argumentuproject.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
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)