參考
python中的super()方法主要用於子類引用父類方法,因為這樣做可以提高**的復用性
#!/usr/bin/env python
# -*- coding=utf-8 -*-
#用於測試類繼承的super()方法
class a(object):
"""父類
"""def __init__(self,a,b):
self.a = a
self.b = b
def add(self):
return self.a + self.b
class b(a):
"""子類
"""def __init__(self,a,b):
super(b,self).__init__(a,b)
def __call__(self):
return super(b,self).add()
if __name__ == "__main__":
b_test = b(1,2)
print(b_test())
檢視以上我的練習**,我們可以通過super(b,self)的方式來引用class b的父類,並藉此來使用父類的方法,那麼這裡問題來了,要是多重繼承,每個父類裡面存在乙個相同的方法,那麼此時呼叫super()方法會發生什麼事情呢,這一點請查閱如下部落格
其中對多繼承時使用super()方法做了比較詳盡的介紹。
python 中類的繼承
python 中的類可以繼承父類這是眾所周知的。突然發現遇到乙個問題,如果父類和子類都含有某個方法,是採用什麼掉用方式呢,我想的是會呼叫之類方法,如果不存在,則呼叫父類方法。python 應該滿足該就近原則。還是動手驗證下記得清楚,儲存檔案為test.py class parent object d...
python中類的繼承
物件導向程式設計 oop 語言的乙個主要功能就是 繼承 繼承是指這樣一種能力 它可以使用現有類的所有功能,並在無需重新編寫原來的類的情況下對這些功能進行擴充套件。class person object 定義乙個父類 deftalk self 父類中的方法 print person is talkin...
python 類 繼承 python 類的繼承
1 所用的類都可以被繼承 2 沒有繼承其他類的類必然有乙個父類 object 3子類可以擁有父類的 init 裡的類容 派生子類除了父類的一些屬性,還會有自己的屬性和方法,這些就叫派生 如何使用 實現 class animal def init self,name,attack,hp self.na...