python 類的繼承與多型

2021-09-30 00:02:50 字數 1835 閱讀 6676

#類的繼承

class anmial

(object)

: #anmial 類繼承object

def __init__

(self, ***)

: self.*** = ***

def eat

(self)

:print

("anmial is eating!"

) def run

(self)

:print

("running ...."

)class cat

(anmial)

: #cat類繼承anmial 類

def eat

(self)

:print

("cat is eatting!"

)class dog

(anmial)

: def __init__

(self, name,age,***)

:super

(dog, self)

.__init__

(***)

self.name = name

self.age = age

def run

(self)

:print

("dog is running!"

) def eat

(self)

:print

("dog is eatting!"

)class classname

(object)

: #不僅用父類的初始化方法,又用自己的方法

"""docstring for classname"

"" def __init__

(self, arg)

:super

(classname, self)

.__init__

() #呼叫父類的初始化方法

self.arg = arg

#多型 :

def feed

(obj)

: obj.

eat(

)an=

anmial

("meal"

)cat=

cat(

"meal"

)dog =

dog(

"小白"

,1.5

,"meal"

)# feed(an)

# feed(dog)

feed

(cat)

cat=

cat(

"meal"

) cat.

run(

)cat.

eat(

)print

(cat.***)

# print(type(cat))

dog=

dog(

"小白"

,1.5

,"meal"

) #優先使用子類的方法

dog.

run(

)dog.

eat(

) #使用父類的方法,先找子類,子類沒有就找父類

print

(dog.name)

print

(dog.***)

結果:cat is eatting!

running ...

.cat is eatting!

meal

dog is running!

dog is eatting!

小白meal

[finished in 0.3s]

python類的繼承與多型

定義乙個類 class animal object defrun self print animal is runnning 繼承此類 class dog animal pass例項化 dog.run animal is runnning 以上 母類擁有乙個方法 此方法會繼承到子類,故子類也可以執行...

python類的繼承與多型

繼承 class 類名 父類名 子類繼承父類,執行初始化 init 時,子類屬性要把 父類名.init 方法 屬性 全部寫上 在給物件賦值 如果子類物件使用父類的方法屬性 1可以在子類方法中,寫上父類的方法及屬性 父類 init 方法 屬性 經典類寫法 2或者用super呼叫父類方法,super 或...

python類封裝,繼承與多型

將類的函式偽裝成物件的屬性,使用該裝飾器裝飾的類的方法 可用物件名.方法名呼叫。此時不用加括號 此時的learn方法是用的類屬性的呼叫方式進行呼叫 類的繼承方式,在類名的括號中加入要繼承類的類名,當要繼承多個類時,用逗號隔開。利用類的內建屬性 bases 可以檢視當前類繼承了哪些類 在物件呼叫方法時...