一.继承的实现原理
1.继承顺序
1.1单独分叉线路:经典类与新式类依次从左到右,深度优先
1.2多条重合线路:经典类一路到头,深度优先;新式类,广度优先。<参考MRO列表,仅在新式类有>
class A(object): def test(self): print('from A') class B(A): def test(self): print('from B') class C(A): def test(self): print('from C') class D(B): def test(self): print('from D') class E(C): def test(self): print('from E') class F(D,E): # def test(self): # print('from F') pass f1=F() f1.test() print(F.__mro__) #只有新式才有这个属性可以查看线性列表,经典类没有这个属性 #新式类继承顺序:F->D->B->E->C->A #经典类继承顺序:F->D->B->A->E->C #python3中统一都是新式类 #pyhon2中才分新式类与经典类