六、面向对象编程
Python 面向对象的核心不是套用 Java 式类层次,而是理解属性查找、绑定方法、数据模型协议,并在组合、继承、抽象基类和结构化协议之间做有边界的选择。
本章目录
学习目标
- 区分类属性与实例属性,理解方法绑定和
super()的协作语义。 - 掌握组合优于继承的判断依据,并正确分析 C3 方法解析顺序(Method Resolution Order,MRO)。
- 理解
property、描述符和常见魔术方法为何能工作。 - 在
Protocol、抽象基类(ABC)与元类之间做保守选择。
验证基线
本章示例位于 example-project/src/tasklib/oop.py,描述符、泛型栈与组合容器已通过 mypy --strict 和 6 个专项测试。
关联章节
- 上一章:05 类型提示与数据建模
- 下一章:07 异常与资源管理
