代码示例
python
class Employee:
def __init__(self,name,id):
self.name = name
self.id = id
def print_info(self):
print(f"员工名字:{self.name},工号:{self.id}")
# 全职员工类:继承Employee,仅需月薪参数
class FullTimeEmployee(Employee):
def __init__(self,name,id,monthly_salary):
super().__init__(name,id) # 调用父类初始化方法,继承姓名和工号
self.monthly_salary = monthly_salary
def calculate_monthly_salary(self):
return self.monthly_salary # 全职员工月薪=固定月薪
# 兼职员工类:继承Employee,需日薪和工作天数参数
class PartTimeEmployee(Employee):
def __init__(self,name,id,daily_salary,work_days):
super().__init__(name,id)
self.daily_salary = daily_salary # 日薪
self.work_days = work_days # 月工作天数
def calculate_monthly_salary(self):
return self.daily_salary * self.work_days # 兼职月薪=日薪×工作天数
# 正确创建全职员工实例(传3个参数:姓名、工号、月薪)
zhangsan = FullTimeEmployee("zhangsan",1,10000) # 修正原代码月薪100000可能是笔误,也可保留
# 正确创建兼职员工实例(传4个参数:姓名、工号、日薪、工作天数)
lisi = PartTimeEmployee("lisi",2,230,15)
# 调用父类的print_info方法打印员工信息
zhangsan.print_info()
lisi.print_info()
# 可选:打印月薪计算结果,验证功能
print(f"张三月薪:{zhangsan.calculate_monthly_salary()}元")
print(f"李四月薪:{lisi.calculate_monthly_salary()}元")
