本文主要是介绍流畅的python-学习笔记_协议+继承优缺点,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
接口和协议
python动态语言,没有interface等概念,接口和协议方法有的也有替代品,所以类似于鸭子类型,只关注行为像鸭子,不关注它是不是鸭子。不是每个接口都得实现,这是允许的
猴子补丁
可动态给对象添加新方法,又不改变对象源代码,这种方法叫 猴子补丁。它会使代码更耦合
应该少用isinstance,而是用多态,分配给对应的处理
子类化内置类
即从自定义class继承于内置类型会有问题,因为派生子类的特殊方法,解释器不一定会调用你的方法,会导致问题。这类内置类不便于扩展,有专门用于扩展的类,可以继承这些类
多重继承
菱形继承时,py会有自己的方法查找顺序,这个顺序叫MRO,Method Resolution Order,可以通过类的__mro__方法访问mro
多继承类声明顺序也会影响mro
多重继承处理
这篇关于流畅的python-学习笔记_协议+继承优缺点的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!