流畅的python-学习笔记_协议+继承优缺点

接口和协议

python动态语言,没有interface等概念,接口和协议方法有的也有替代品,所以类似于鸭子类型,只关注行为像鸭子,不关注它是不是鸭子。不是每个接口都得实现,这是允许的

猴子补丁

可动态给对象添加新方法,又不改变对象源代码,这种方法叫 猴子补丁。它会使代码更耦合

应该少用isinstance,而是用多态,分配给对应的处理

子类化内置类

即从自定义class继承于内置类型会有问题,因为派生子类的特殊方法,解释器不一定会调用你的方法,会导致问题。这类内置类不便于扩展,有专门用于扩展的类,可以继承这些类

多重继承

菱形继承时,py会有自己的方法查找顺序,这个顺序叫MRO,Method Resolution Order,可以通过类的__mro__方法访问mro

多继承类声明顺序也会影响mro

多重继承处理

相关推荐
一米阳光86616 小时前
软考(中级)软件设计师核心笔记(6)系统开发基础——需求分析、系统设计
笔记·职场发展·需求分析·软考·软件设计师·中级职称
山荷枝9 小时前
Java学习第十天
java·学习
huibin1478523699 小时前
热缓解学习记录
android·学习
雨田言炎10 小时前
四、关于Qt项目需要知道的
开发语言·笔记·qt
Nan_Shu_61410 小时前
学习:GSAP
学习
hanlin0311 小时前
动态规划专练:力扣第121、122题
笔记·算法·leetcode
摇滚侠12 小时前
SpringBoot 官网 阅读笔记 启用生产就绪功能 端点
spring boot·笔记·后端
我命由我1234512 小时前
匈牙利命名法
java·服务器·后端·学习·java-ee·kotlin·学习方法
AI云海12 小时前
完整机器学习工业项目流水线笔记
人工智能·笔记·机器学习
2601_9657996813 小时前
2026 在线笔试平台深度测评与选型指南:从功能、稳定性、AI能力、防作弊全面分析
人工智能·笔记·功能测试