python 父类构造函数,python 对于子类构造函数重写父类构造函数的了解
1、對(duì)子類(lèi)實(shí)例化的時(shí)候,子類(lèi)的構(gòu)造函數(shù)會(huì)覆蓋父類(lèi)的構(gòu)造函數(shù)。super()相當(dāng)于父類(lèi),所以在子類(lèi)的構(gòu)造函數(shù)中執(zhí)行super(),就相當(dāng)于執(zhí)行了父類(lèi)的構(gòu)造函數(shù)
class Parent:
def __init__(self):
print('不想被覆蓋')
def add(self):
print('add')
class Son(Parent):
def __init__(self,a,b,c=10):
super().__init__()
print(a+b+c)
def add2(self):
print('add2')
son = Son(14,52)
son.add2()
son.add()
----------------------------
不想被覆蓋
76
add2
add
----------------------------
2、對(duì)子類(lèi)實(shí)例化的時(shí)候,如果子類(lèi)沒(méi)有顯式的寫(xiě)構(gòu)造函數(shù),那么系統(tǒng)會(huì)自動(dòng)給你添加構(gòu)造函數(shù)并用super() 處理好。這個(gè)時(shí)候如果傳了參數(shù),那么父類(lèi)的構(gòu)造函數(shù)就要接收傳入的參數(shù),如下面的例子一樣。
class Parent:
def __init__(self,a,b):
print(a,b)
def add(self):
print('add')
class Son(Parent):
def add2(self):
print('add2')
son = Son(14,52)
son.add2()
son.add()
----------------------------
14 52
add2
add
----------------------------
標(biāo)簽:__,add2,python,子類(lèi),self,add,print,構(gòu)造函數(shù)
來(lái)源: https://www.cnblogs.com/huaniaoyuchong/p/13919917.html
《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專(zhuān)家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的python 父类构造函数,python 对于子类构造函数重写父类构造函数的了解的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: matlab 自动控制仿真,Matlab
- 下一篇: python中insert()函数的用法