Python 的多重继承

在我们使用多重继承时,根据新的C3 class resolution算法,执行如下操作:假设 C 继承两个父类 A,B,“A 应该先于 B”。

输出:

Screen Shot 2015-11-27 at 10.00.00 AM

上面代码在查找foo方法时,先从C开始找,然后A,在A里如果找到foo方法,调用A的,依次类推。查找顺序 C->A->B。

在看一个例子:

先在B里找,B又继承自A(C也是继承自A,但是它有自己的foo方法),查找顺序为 D->B->C->A。(从菱形下向上查找)

A
/
B         C
/
D

Screen Shot 2015-11-27 at 10.24.59 AM

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注