(资料图片)
多重继承是指一个子类继承多个父类,而这些父类本身也继承自其它类。在 Python 中,多重继承可以实现复杂的继承关系。下面是一个简单的例子,演示了如何使用多重继承:
class A: def a(self): print("A")class B(A): def b(self): print("B")class C(A): def c(self): print("C")class D(B, C): def d(self): print("D")# 创建一个 D 对象d = D()# 调用子类的方法d.a()d.b()d.c()d.d()
在上面的代码中,我们定义了四个类 A、B、C
和 D
,其中 A
是 B
和 C
的父类,而 D
继承了 B
和 C
两个类,并添加了一个新的方法 d()
。在创建 D
对象时,Python 解释器会按照方法解析顺序(MRO)来查找方法,这个顺序是通过 C3 线性化算法得出的。在本例中,MRO 的顺序为 [D, B, C, A, object]
,即先查找 D
类自己的方法,如果没有找到,就按照 B
、C
、A
的顺序逐个查找父类的方法,最后查找 object
类的方法(所有类都默认继承自 object
类)。