python子類重寫 __init__方法注意的地方

__init__方法:構造方法,在對象初始化的時候調用,一般初始化時綁定一些對象上的屬性
如果父類中定義了__init__方法
如果子類中沒有定義__init__方法,那麼子類在初始化時會調用父類的__init__方法,所以子類在初始化對象時要傳參,否則報錯
如果子類中也要定義自己的__init__方法,那麼子類的__init__方法一定要在定義時定義和父類同樣的形參,或者用*args,**kwargs
然後還要顯式調用父類的__init__方法:super().__init__(形參..)或者父類.__init__(子類名,形參..),這樣子類同時擁有了父類中的__init__中的屬性,也擁有了自己
定義的__init__方法中的屬性,你可以使用父類中的__init__方法中的屬性,特別是父類中的方法一般都會用到__init__中定義的屬性,如果你不調用父類的__init_方法,那麼在調用父類
的方式時會報錯
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章