python中類的初始化方法是__init__(),因此父類子類的初始化方法都是這個(gè),如果子類不實(shí)現(xiàn)這個(gè)函數(shù),初始化時(shí)調(diào)用父類的初始化函數(shù),如果子類實(shí)現(xiàn)這個(gè)函數(shù),就覆蓋了父類的這個(gè)函數(shù),既然繼承父類,就要在這個(gè)函數(shù)里顯式調(diào)用一下父類的__init__(),這跟C++,jAVA不一樣,他們是自動(dòng)調(diào)用父類初始化函數(shù)的。
調(diào)用父類函數(shù)有以下方法:
classA:
defmethod(self,arg):
pass
classB(A):
defmethod(self,arg):
#A.method(self,arg)#1
#super(B,self).method(arg)#2
su
1.直接寫類名調(diào)用
2.用super(type,obj).method(arg)方法調(diào)用。
3.在類定義中調(diào)用本類的父類方法,可以直接super().method(arg).
在代碼中調(diào)用對象的父類的方法的示例:
ob=B()
super(B,ob).method(arg)#調(diào)用classB的父類classA的method。
初始化中調(diào)用父類初始化方法示例:
classB(A):
def__init__(self):
super().__init__()
以上內(nèi)容為大家介紹了python培訓(xùn)之子類怎么調(diào)用父類方法,希望對大家有所幫助,如果想要了解更多Python相關(guān)知識(shí),請關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。