(相關(guān)資料圖)
多重繼承
多重繼承是指一個(gè)子類繼承多個(gè)父類,而這些父類本身也繼承自其它類。在 Python 中,多重繼承可以實(shí)現(xiàn)復(fù)雜的繼承關(guān)系。下面是一個(gè)簡單的例子,演示了如何使用多重繼承:
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")# 創(chuàng)建一個(gè) D 對象d = D()# 調(diào)用子類的方法d.a()d.b()d.c()d.d()
在上面的代碼中,我們定義了四個(gè)類 A、B、C
和 D
,其中 A
是 B
和 C
的父類,而 D
繼承了 B
和 C
兩個(gè)類,并添加了一個(gè)新的方法 d()
。在創(chuàng)建 D
對象時(shí),Python 解釋器會按照方法解析順序(MRO)來查找方法,這個(gè)順序是通過 C3 線性化算法得出的。在本例中,MRO 的順序?yàn)?[D, B, C, A, object]
,即先查找 D
類自己的方法,如果沒有找到,就按照 B
、C
、A
的順序逐個(gè)查找父類的方法,最后查找 object
類的方法(所有類都默認(rèn)繼承自 object
類)。
關(guān)鍵詞:
責(zé)任編輯:Rex_22