Python 面向对象三大基础:封装、组合、继承 一、封装把数据和配套操作打包放一块先说封装最简单一句话东西和操作它的方法塞到同一个类里不让外面随便乱改数据。拿我们写的Student学生类举例子 学生有学号、名字、年龄、性别这些信息这是 “数据”还有查询学生、修改学生信息、打印学生信息的函数这是 “操作”。 以前写代码可能把名字、年龄单独放变量改年龄、查名字单独写函数乱七八糟散得到处都是。封装之后全部装进Student这个类里面一个学生就是一个完整对象。配套的StudentManage也是封装思路所有添加、删除、修改学生的功能全放这个类不用到处找零散代码。 好处特别实在想改学生相关功能只找这一个类就行不会牵一发而动全身改乱别的代码。二、组合把别的类当成自己的 “配件”组合和继承经常搞混我分清楚了组合是我里面装别人是 “拥有” 关系。参考课本里汽车、人的例子一个人拥有一辆车、一张身份证、一把武器所以Person类里面直接放Car、Card、Weapon的实例这就是组合。放到我们的成绩管理系统里更好理解 总控类SystemManage里面写了三行代码self.student_manage StudentManage() self.course_manage CourseManage() self.score_manage ScoreManage()系统 “拥有” 学生管理、课程管理、成绩管理三个工具类想要添加学生就调用self.student_manage里的方法这就是标准组合写法。没有组合的话所有菜单、增删学生、录入成绩代码全堆在一个大类里几百行挤在一起找功能能看花眼三、继承子类复刻老爸还能自己加新本事继承是 “父子关系”儿子能直接拿走父亲所有属性和功能还能自己新增、改写方法。课本里Person是父类普通人有姓名、年龄能打印个人信息SuperPerson是子类除了拥有普通人全部东西额外多了技能属性。 用super().__init__()调用父类构造方法不用重复写姓名、年龄代码少写超多重复内容。 还能重写父类的get_info、__str__方法在原有基础上追加子类独有的内容不用完全重写一遍。四、三者结合我们的学生成绩系统就是完整案例我们写的系统严格拆了 7 个类刚好把封装 组合全部用上实体类Student/Course/Score纯封装只存对应数据重写打印方法管理类StudentManage/CourseManage/ScoreManage封装所有增删改查操作SystemManage总控类用组合把三个管理类装在内部统一调度菜单。

相关新闻

最新新闻

三重融合验证:提升意图识别准确率的工程架构实践

三重融合验证:提升意图识别准确率的工程架构实践

1. 项目概述:从“听懂”到“理解”的进化 在智能对话系统的开发中,意图识别(Intent Recognition)一直是决定交互体验成败的核心技术。早期的规则匹配,到后来的机器学习分类,我们一直在努力让机器“听懂”用…

2026/8/4 4:05:21
CBCX:把多语言支持做到位——维度对照与提示整理

CBCX:把多语言支持做到位——维度对照与提示整理

对新手与注重稳健体验的外汇内容读者而言,“能看懂”往往比“堆概念”更重要。围绕CBCX,以下重点写清解释是否通俗、规则是否易查、提示是否前置,以及服务是否具备连续性。在外汇相关服务中,读者最在意的通常是信息是否清楚、提示…

2026/8/4 4:05:21
伐达度司他vadadustat简化肾性贫血治疗流程 显著减轻透析患者就医负担

伐达度司他vadadustat简化肾性贫血治疗流程 显著减轻透析患者就医负担

维持性血液透析患者的肾性贫血管理,长期是临床流程繁琐的重灾区:既往每次透析时都需要评估促红素剂量、安排皮下注射,频繁监测铁代谢指标,定期安排静脉补铁,不少患者每周透析3次,每次都要在透析中心额外花费…

2026/8/4 4:05:21
扣子飞书机器人灰度发布SOP(含AB测试模板+错误率熔断阈值表)

扣子飞书机器人灰度发布SOP(含AB测试模板+错误率熔断阈值表)

更多请点击: https://intelliparadigm.com 第一章:扣子飞书机器人灰度发布SOP概述 灰度发布是保障扣子(Coze)平台飞书机器人上线稳定性与风险可控性的核心实践。本SOP聚焦于从配置准备、环境隔离、流量分层到监控验证的全链路标准…

2026/8/4 4:05:21
电赛备赛全攻略:从零构建高效竞赛方法论与技能体系

电赛备赛全攻略:从零构建高效竞赛方法论与技能体系

1. 这篇文章真正要解决的问题如果你是一名电子、自动化或相关专业的学生,或者是一位对硬件开发感兴趣的工程师,那么“电赛备赛”这四个字,很可能意味着接下来几个月里,你将面临一场时间紧、任务重、压力大的硬仗。全国大学生电子设…

2026/8/4 4:05:21
Android SO库OLLVM混淆实战:从原理到NDK集成全解析

Android SO库OLLVM混淆实战:从原理到NDK集成全解析

1. 项目背景与核心价值最近在加固一个Android应用的Native层代码时,遇到了一个棘手的问题:我们的核心算法和业务逻辑都封装在C/C编写的SO库(动态链接库)里,虽然Java层代码通过ProGuard进行了混淆,但SO库里的…

2026/8/4 4:00:21