多型與多型性

2022-09-17 12:12:11 字數 1452 閱讀 3210

1. 什麼是多型

多型指的是同一種/類事物的不同形態

2.為何要用多型性

1 增加了程式的靈活性

2 增加了程式的可擴張性

多型性:分為靜態多型性和動態多型性

多型性:在多型的背景下,可以在不用考慮物件具體型別的前提下而直接使用物件

多型性的精髓:統一

3. 如何用多型

class

animal:

defspeak(self):

pass

class

people(animal):

defshuo(self):

print('

say hello')

class

dog(animal):

defjiao(self):

print('

汪汪汪'

)class

pig(animal):

defchang(self):

print('

哼哼哼'

)obj1=people()

obj2=dog()

obj3=pig()

#obj1.speak()

#obj2.speak()

#obj3.speak()

defspeak(animal):

animal.speak()

speak(obj1)

speak(obj2)

speak(obj3)

python 崇尚鴨子型別

逗比時刻:

python崇尚鴨子型別,即『如果看起來像、叫聲像而且走起路來像鴨子,那麼它就是鴨子』

python程式設計師通常根據這種行為來編寫程式。例如,如果想編寫現有物件的自定義版本,可以繼承該物件

也可以建立乙個外觀和行為像,但與它無任何關係的全新物件,後者通常用於儲存程式元件的松耦合度。

例1:利用標準庫中定義的各種『與檔案類似』的物件,儘管這些物件的工作方式像檔案,但他們沒有繼承內建檔案物件的方法

class

disk:

defread(self):

print('

disk read')

defwrite(self):

print('

disk write')

class

memory:

defread(self):

print('

mem read')

defwrite(self):

print('

mem write')

obj1=disk()

obj2=memory()

obj1.read()

obj2.read()

view code

Python 多型與多型性

同一種事務的多種形態 就是多型 車有多種形態,你沒有具體學習某乙個物件,你是學的怎麼開車 這就是多型性 1 增加了程式的靈活性 以不變應萬變,不論物件千變萬化,使用者都是同一種形式去呼叫,如func animal 2 增加了程式可擴充套件性 通過繼承animal類建立了乙個新的類,使用者無需改變自己...

類的多型與多型性

多型是指一類事物有多種形態 class animal def speak self print f 開口說話 動物的形態之一 人 class people animal def speak self print 呵呵呵 動物的形態之二 狗 class duck animal def speak se...

Python多型和多型性

python多型和多型性 python 中的多型是指一類事務有多種形態。比如動物有多種形態,人,狗,貓,等等。import abc class animal metaclass abc.abcmeta 同一類事物 動物 abc.abstractmethod def talk self pass cl...