python中calss的用法

代码示例

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()}元")
相关推荐
老徐聊GEO27 分钟前
AI搜索流量转化率实测分享:我的案例与复盘
人工智能·python
草莓熊Lotso27 分钟前
【LangChain】流式传输原理与 LangSmith 应用监控全解析
人工智能·python·langchain·gpt-3
老毛肚8 小时前
jeecg-boot-base-core 02 day
javascript·python
yaoxin5211238 小时前
434. Java 日期时间 API - Period 基于日期的时间段
java·开发语言·python
凡人叶枫8 小时前
Effective C++ 条款30:透彻了解 inlining 的里里外外
linux·开发语言·c++·嵌入式开发·effective c++
学逆向的9 小时前
C++纯虚函数
开发语言·c++·网络安全
岁月宁静9 小时前
RAG 文档摄入全链路,从原理到生产落地
vue.js·人工智能·python
程序员二叉9 小时前
【JUC】ThreadLocal底层原理|内存泄漏|弱引用|跨线程传递方案
java·开发语言·面试·职场和发展·juc
程序员二叉9 小时前
【JUC】线程池全套深度详解|参数|流程|拒绝策略|调优|异常处理
java·开发语言·jvm·算法·面试·juc
JaydenAI9 小时前
[对比学习LangChain和MAF-07]如何引入人机交互的审批流程
python·ai·langchain·c#·agent·hitl·maf