Python如何繼承父類 init

2021-10-25 06:37:08 字數 2151 閱讀 7788

如果在子類需要父類的構造方法就需要顯示地呼叫父類的構造方法,或者不重寫的構造方法。

型別1:如果子類沒有重寫__init__,子類會自動呼叫__init__

classf:

def__init__

(self, name)

: self.name = name

print

('name:'

+self.name)

defgetname

(self)

:return

'f:'

+ self.name

class

s(f)

:def

getname

(self)

:return

's:'

+ self.name

if __name__ ==

'__main__'

: s = s(

'sun'

)print

(s.getname(

))

執行結果:

型別2:如果重寫__init__,例項化子類,就不會呼叫父類的__init__方法

classf:

def__init__

(self, name)

: self.name = name

print

('name:'

+self.name)

defgetname

(self)

:return

'f:'

+ self.name

class

s(f)

:def

__init__

(self, name)

: self.name = name

print

('sname:'

+self.name)

defgetname

(self)

:return

's:'

+ self.name

if __name__ ==

'__main__'

: s = s(

'sun'

)print

(s.getname(

))

執行結果:

型別3:子類重寫__init__,就要繼承父類的構造方法,可以使用super關鍵字

classf:

def__init__

(self, name)

: self.name = name

print

('fname:'

+self.name)

defgetname

(self)

:return

'f:'

+ self.name

class

s(f)

:def

__init__

(self, name)

:super

(s,self)

.__init__(name)

self.name = name

print

('sname:'

+self.name)

defgetname

(self)

:return

's:'

+ self.name

if __name__ ==

'__main__'

: s = s(

'sun'

)print

(s.getname(

))

執行結果:

python之繼承父類

import unittest class person object def age self print this is father s age def self print this is father s class student person def student self prin...

php 怎麼繼承父類的變數 php如何繼承父類方法

php繼承父類方法 使用student類繼承person類,為 class student extends person php繼承父類方法 在php中不能定義重名的函式,也包括不能再同乙個類中定義重名的方法,所以也就沒有方法過載。單在子類中可以定義和父類重名的方法,因為父類的方法已經在子類中存在,...

python子類如何繼承父類的例項變數?

型別1 父類和子類的例項變數均不需要傳遞 classa object def init self self.name cui defget name self return self.name class b a def init self super b,self init self.age 12...