4. 定义员工类(Employee) 属性有员工编号、姓名、等级(普通员工,领导)、领导编号(领导也是员工) 需求:根据员工编号,查询领导信息(使用参数和返回类型)
时间: 2024-09-10 21:21:34 浏览: 82
在面向对象的设计中,我们可以定义一个`Employee`类来表示公司的员工,包含所需的属性。这里是一个简单的`Employee`类的定义示例,使用Python语言来说明:
```python
class Employee:
def __init__(self, employee_id, name, role, leader_id=None):
self.employee_id = employee_id
self.name = name
self.role = role # 普通员工 or 领导
self.leader_id = leader_id if role == '领导' else None
# 定义一个静态方法来查询领导信息,因为领导也可能不是`Employee`对象
@staticmethod
def find_leader(employee_id):
# 这里只是一个简单的示例,实际应用可能需要连接数据库或其他数据源查询
for employee in get_all_employees(): # 假设有一个函数get_all_employees()获取所有员工
if employee.employee_id == employee_id and employee.role == '领导':
return {'employee_id': employee.employee_id, 'name': employee.name, 'leader_id': employee.leader_id}
return None # 如果找不到对应的领导,返回None
# 示例用途
employee = Employee(1001, '张三', '普通员工')
if Employee.find_leader(employee.employee_id) is not None:
print(f"员工{employee.employee_id}的领导信息: {Employee.find_leader(employee.employee_id)}")
else:
print(f"员工{employee.employee_id}没有直接领导")
```
在这个例子中,`find_leader`方法是一个静态方法,接收一个员工编号作为参数并查找对应的领导。它假设我们有一个全局的数据结构或者数据库来存储员工信息。
阅读全文