标签:efault method ase 父类 call val ogr not bsp
1. MRO: method resolution order
lookup order:
L(MyClass) = [MyClass, merged(L(Base1), L(Base2), Base1, Base2)]
2. super(...)
必须所有的父类都call super, 不然会有不可预测的问题
3. class variable & instance variable
查找顺序
都可以通过 self.x 访问, 所以instance variable 会覆盖class variable, 而class variable 可以用来定义一个default value for instance variable.
如果是mutable的,会有些特殊
4. descriptor
只能定义在class level, 可以通过在instance里记录每次设置的value来为每个instance 定义不同的value for class variable
Expert Python programming - Reading Notes
标签:efault method ase 父类 call val ogr not bsp
原文地址:http://www.cnblogs.com/lynnge/p/5996128.html