これは私の宿題です。前にウェブサイトに投稿されたのを見ましたが、未解決のようで、以前その質問をした人とは異なるエラー メッセージが表示されました。
問題の最初の部分は、サブクラス Worker を定義することです。このサブクラスは Employee から継承し、ワーカーのマネージャーである別の従業員を参照する属性を含みます。ワーカーのマネージャーを返すメソッド get_manager を定義する必要があります。
例:
worker = Worker("Fred", 52000, myboss)
問題の 2 番目の部分は、Employee から継承し、年間ボーナスを参照する属性を含むサブクラス Executive を定義することです。
役員の給与とボーナスに基づいて役員報酬を計算するには、wage メソッドをオーバーライドする必要があります。Executive クラスの賃金メソッドの定義では、Employee の賃金メソッドを使用する必要があります。
例:
executive = Executive("Kerry", 520000, 1040000)
私のコードは以下に書かれており、エラーメッセージは次のとおりです。「従業員. init (self,name,salary) ' クラス Executive 用 (Worker クラス用)。なぜそのエラーが発生するのですか?どうすれば修正できますか?
ご協力ありがとうございました!
class Employee(object):
def __init__(self, name, salary):
self._name = name
self._salary = salary
def my_name(self):
return self._name
def wage(self):
return self._salary/26 # fortnight pay
class Worker(Employee):
def __init__(self, name, salary, manager):
Employee.__init__(self, name, salary)
self._manager = manager
def getManager(self):
return self._manager
class Executive(Employee):
def __init__(self, name, wage, yearlyBonus):
Employee.__init__(self, name, salary)
self._yearlyBonus = yearlyBonus
def wage(self):
return Employee.wage(self)