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

接口和协议

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

猴子补丁

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

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

子类化内置类

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

多重继承

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

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

多重继承处理

相关推荐
IT=>小脑虎7 分钟前
鸿蒙开发零基础小白学习知识点【基础版·详细版】
学习·华为·harmonyos
实战项目19 分钟前
前端安全攻防实践与策略优化
学习
charlie11451419124 分钟前
现代嵌入式C++教程:if constexpr——把编译期分支写得像写注释 —— 工程味实战指南
开发语言·c++·笔记·学习·嵌入式·现代c++
xiaoxiaoxiaolll42 分钟前
《自然·通讯》:纳米TiC复合粉末如何赋予3D打印CoCrNi合金超常低温韧性?
学习
2301_7973122644 分钟前
学习Java38天
学习
今儿敲了吗1 小时前
计算机网络第四章笔记(一)
笔记·计算机网络
好奇龙猫1 小时前
【日语学习-日语知识点小记-日本語体系構造-JLPT-N2前期阶段-第一阶段(3):单词语法】
学习
西西学代码1 小时前
aa---(7)
笔记
日更嵌入式的打工仔1 小时前
固态硬盘接口体系
网络·笔记
儒雅永缘1 小时前
Solidworks练习39-拉伸、拉伸切
笔记·学习