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

接口和协议

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

猴子补丁

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

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

子类化内置类

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

多重继承

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

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

多重继承处理

相关推荐
AI视觉网奇36 分钟前
Epic linux 打包。
笔记·学习·ue5
biuyyyxxx1 小时前
Power Query学习笔记(一)
笔记·学习
淡忘旧梦2 小时前
词错误率/WER算法讲解
人工智能·笔记·python·深度学习·算法
Dream Algorithm2 小时前
POS机的机制,以及流量是怎么传送的
笔记
狐572 小时前
2026-01-21-牛客每日一题-静态区间和(前缀和)
笔记·算法
佳哥的技术分享3 小时前
Function<T, R> 中 apply,compose, andThen 方法总结
java·学习·r语言
Yu_Lijing3 小时前
基于C++的《Head First设计模式》笔记——状态模式
c++·笔记·设计模式
阳明Coding3 小时前
golang从入门到通天—数据库操作(gorm框架使用)(最简单最详细的golang学习笔记)
笔记·学习·golang
AI视觉网奇4 小时前
ue5 开发 web socket server 实战2026
c++·学习·ue5
嗯嗯=4 小时前
STM32单片机学习篇6
stm32·单片机·学习