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
Python'da Nesne Yönelimli Programlamaya Giriş
kursunun bir parçasıdırEgzersiz 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ı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
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)