Discuss / Python / 有个问题

有个问题

Topic source

叫小小兽

#1 Created at ... [Delete] [Delete and Lock User]

比如C同时继承A和B class C(A,B)

如果A和B各自都有一个fn()方法呢?这个时候要是从C来调用fn()方法,将会调用哪一个?

一只仙狗

#2 Created at ... [Delete] [Delete and Lock User]

同问……

_若逝

#3 Created at ... [Delete] [Delete and Lock User]

我试了一下,貌似如果重名,就调用括号中写在前面的那个父类的方法诶,class C(A,B)就调用A中的,class C(B,A)就调用B中的。。。

一般顺序是先从C开始,如果C没有那个函数就从A中找,如果还没有就B,但如果A,B又同时一个父类,这时候就有两顺序了。

WingsXmldoc

#5 Created at ... [Delete] [Delete and Lock User]

6666

WingsXmldoc

#6 Created at ... [Delete] [Delete and Lock User]

应该是前面的父类覆盖了后面的父类吧

MixIn是为了组合不同的功能的,在实际的编码中是不可能这么设计的


  • 1

Reply