Metot kalıtımı
Bu egzersizde, önceki egzersizde oluşturduğun Employee sınıfından türetilmiş Manager sınıfını, give_raise() adlı bir metot ekleyerek genişleteceksin. Bu metot, Employee sınıfındaki aynı adlı metota benzeyecek ancak bonus adlı ek bir argüman içerecek.
Daha önce oluşturduğun Manager sınıfı script.py içinde sana sağlandı.
Bu egzersiz, kursun bir parçasıdır
Python'da Nesne Yönelimli Programlamaya Giriş
Egzersiz talimatları
Manageriçine,Employee.give_raise()ile aynı parametreleri kabul eden, ayrıca varsayılan değeri1.05(%%5 bonus) olan birbonusargümanı ekleyen birgive_raise()metodu ekle.- Metot içinde,
new_amount'ıamountilebonus'u çarparak hesapla. - Metot içinde, maaşı
new_amountkadar artırmak içinEmployee'ın metodunu kullan.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
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)