Kom igångKom igång gratis

Metodarv

I den här övningen utökar du klassen Manager (som ärvs från klassen Employee), skapad i föregående övning, genom att lägga till en metod som heter give_raise(). Den liknar metoden med samma namn i klassen Employee, men tar även emot ett extra argument som heter bonus.

Klassen Manager som du skapade tidigare finns redan i script.py.

Den här övningen är en del av kursen

Introduktion till objektorienterad programmering i Python

Visa kurs

Övningsinstruktioner

  • Lägg till en metod give_raise() i Manager som tar samma parametrar som Employee.give_raise(), plus ett bonus-argument med standardvärdet 1.05 (5% bonus).
  • Beräkna new_amount i metoden genom att multiplicera amount med bonus.
  • Använd Employee-klassens metod i metoden för att höja lönen med new_amount.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

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)
Redigera och kör kod