实现一个名为Person的类和它的子类Employee,Manager是Employee的子类,设计一个接口add用于涨工资,普通员工一次能涨10%,经理能涨20%。具体要求如下:\n(1)Person类中的属性有:姓名name、地址address,定义该类的构造方法; \n(2)Employee类中的属性有:工号id、工资wage、工龄workAge,定义该类的构造方法; \n(3)Manager类中的属性有:级别level,定义该类的构造方法; \n(4)编写一个测试类,创建一个员工和一个经理对象,给该员工和经理涨工资,并输出其具有的信息。
时间: 2023-11-27 21:55:10 浏览: 146
下面是一个实现上述要求的 Python 代码:
```python
class Person:
def __init__(self, name, address):
self.name = name
self.address = address
class Employee(Person):
def __init__(self, name, address, id, wage, workAge):
super().__init__(name, address)
self.id = id
self.wage = wage
self.workAge = workAge
def add(self):
self.wage *= 1.1
class Manager(Employee):
def __init__(self, name, address, id, wage, workAge, level):
super().__init__(name, address, id, wage, workAge)
self.level = level
def add(self):
self.wage *= 1.2
employee = Employee('Tom', 'Beijing', '001', 5000, 2)
manager = Manager('Jack', 'Shanghai', '002', 8000, 5, 2)
employee.add()
manager.add()
print('Employee:', employee.name, employee.address, employee.id, employee.wage, employee.workAge)
print('Manager:', manager.name, manager.address, manager.id, manager.wage, manager.workAge, manager.level)
```
运行结果如下:
```
Employee: Tom Beijing 001 5500.0 2
Manager: Jack Shanghai 002 9600.0 5 2
```
可以看到,Employee 类和 Manager 类都成功实现了 add 接口,实现了涨工资功能,并且输出了员工和经理的相关信息。
阅读全文