Eine Subklasse anpassen
Vererbung ist mächtig, weil sie ermöglicht, Code wiederzuverwenden und anzupassen, ohne bestehenden Code neu zu schreiben. Wenn wir Methoden der Elternklasse innerhalb der Kindklasse aufrufen, nutzen wir den gesamten Code dieser Methoden erneut – das macht unseren Code kompakt und gut wartbar.
In dieser Übung arbeitest du weiter mit der Klasse Manager, die von der Klasse Employee erbt. Du fügst einen Konstruktor hinzu, der auf dem Employee-Konstruktor aufbaut und ein zusätzliches Argument entgegennimmt, mit dem du das Projekt angibst, an dem der Manager arbeitet.
Eine vereinfachte Version der Employee-Klasse sowie der Anfang der zuvor erstellten Manager-Klasse wurden dir in script.py bereitgestellt.
Diese Übung ist Teil des Kurses
Einführung in objektorientierte Programmierung in Python
Anleitung zur Übung
- Füge
Managereinen Konstruktor hinzu, dername,salary(Standardwert50000) undproject(StandardwertNone) akzeptiert. - Rufe innerhalb des
Manager-Konstruktors den Konstruktor der KlasseEmployeeauf und übergib die drei Argumente, die im Konstruktor der Elternklasse definiert sind. - Verwende
self, um das relevante Attribut dem Argumentprojectzuzuweisen.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
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)