Python 3 多型與多型性

2021-10-16 09:16:48 字數 1667 閱讀 7380

多型:同一事物的多種形態

多型性:指的是可以在不考慮物件的型別的情況下而直接使用物件

import abc

class animal(metaclass=abc.abcmeta): # 同一事物:動物

@abc.abstractmethod

def talk(self):

pass

class people(animal): # 動物的形態之一:人

def talk(self):

print('say hello')

class dog(animal): # 動物的形態之二:狗

def talk(self):

print('say wangwang')

class pig(animal): # 動物的形態之三:豬

def talk(self):

print('say aoao')

class cat(animal): # 動物的形態之四:貓

def talk(self):

print('say miaomiao')

peo1 = people()

dog1 = dog()

pig1 = pig()

cat1 = cat()

# 動態多型性

peo1.talk()

dog1.talk()

pig1.talk()

cat1.talk()

結果:say hello

say aoao

say wangwang

say miaomiao

(多型性好處之一)可以使用同一介面來呼叫

(多型性好處之二)增加了程式可擴充套件性

import abc

class animal(metaclass=abc.abcmeta): # 同一事物:動物

@abc.abstractmethod

def talk(self):

pass

class people(animal): # 動物的形態之一:人

def talk(self):

print('say hello')

class dog(animal): # 動物的形態之二:狗

def talk(self):

print('say wangwang')

class pig(animal): # 動物的形態之三:豬

def talk(self):

print('say aoao')

class cat(animal): # 動物的形態之四:貓

def talk(self):

print('say miaomiao')

peo1 = people()

dog1 = dog()

pig1 = pig()

cat1 = cat()

def func(animal):

animal.talk()

func(peo1)

func(pig1)

func(dog1)

func(cat1)

結果:say hello

say aoao

say wangwang

say miaomiao

python3 類的多型與多型性

解釋的很深刻 很多人喜歡將多型與多型性二者混為一談,然後百思不得其解,其實只要分開看,就會很明朗。多型指的是一類事物有多種形態,乙個抽象類有多個子類,因而多型的概念依賴於繼承 序列型別有多種形態 字串,列表,元組 動物有多種形態 人,狗,豬 多型 同一種事物的多種形態,動物分為人類,豬類 在定義角度...

Python 多型與多型性

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

多型與多型性

1.什麼是多型 多型指的是同一種 類事物的不同形態 2.為何要用多型性 1 增加了程式的靈活性 2 增加了程式的可擴張性 多型性 分為靜態多型性和動態多型性 多型性 在多型的背景下,可以在不用考慮物件具體型別的前提下而直接使用物件 多型性的精髓 統一 3.如何用多型 class animal def...