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

接口和协议

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

猴子补丁

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

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

子类化内置类

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

多重继承

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

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

多重继承处理

相关推荐
智者知已应修善业9 小时前
【C++非递归剪枝问题凑钱方案数】2024-7-18
c语言·c++·经验分享·笔记·算法·剪枝
身如柳絮随风扬9 小时前
Git 超详细学习笔记
笔记·git
云潮汐表9 小时前
浒浦潮汐表查询2026-03-28
笔记
承渊政道9 小时前
【优选算法】(实战领略前缀和的真谛)
开发语言·数据结构·c++·笔记·学习·算法
苦瓜小生9 小时前
【Docker】| Docker学习笔记
笔记·学习·docker
玻璃杯中水9 小时前
硬件知识总结梳理-5(二极管)
单片机·嵌入式硬件·学习
Forrit9 小时前
关于Agent的几种范式
笔记
圣光SG9 小时前
Tomcat 全面学习笔记
笔记·tomcat
2501_938313409 小时前
计算机网络学习笔记】初始网络之网络发展和OSI七层模型
笔记·学习·计算机网络
nap-joker9 小时前
【跨尺度】跨尺度多实例学习用于病理图像诊断
人工智能·学习·注意力机制·跨尺度·病理学切片