这是我的作业,我之前在网站上看到过它,但看起来它尚未解决,并且我收到的错误消息与之前提出该问题的人不同。
问题的第一部分是定义从 Employee 继承的子类 Worker,并包含一个引用另一个员工(该员工的经理)的属性。您应该定义一个方法 get_manager 来返回工人的经理。
Example:
worker = Worker("Fred", 52000, myboss)
问题的第二部分是定义继承自 Employee 的子类 Executive,并包含一个引用年度奖金的属性。
您应该覆盖工资方法,根据他/她的工资和奖金来计算高管薪酬。您应该在Executive 类的工资方法的定义中使用Employee 的工资方法。
Example:
executive = Executive("Kerry", 520000, 1040000)
我的代码写在下面,我收到的错误消息是:“Employee.cs”行中的“全局名称‘薪水’未定义”。init(自我,姓名,薪水)' 适用于 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)