目錄
多態
多態(polymorphism)是指同一個方法調用由於對象不同可能會產生不同的行爲; 在現實生活中, 我們有很多例子; 比如: 同樣是調用人的休息方法, 張三的休息是睡覺, 李四的休息是玩遊戲, 王五的休息是逛街; 同樣是喫飯的方法, 中國人用筷子喫飯, 英國人用刀叉喫飯, 印度人用手喫飯;
關於多態注意一下兩點:
=> 多態是方法的多態, 屬性沒有多態;
=> 多態的存在有2個必要條件: 繼承, 方法重寫 ;
#多態
class Animal:
def shout(self):
print("小狗叫了一聲,汪汪汪...")
class Dog(Animal):
def shout(self): #只有繼承和重寫父類方法,才存在多態,不然都是一樣的,不存在多態
print("小狗汪汪汪...")
class Pig(Animal):
def shout(self):
print("小豬昂昂昂...")
s = Dog()
s.shout()
p = Pig()
p.shout() #多態: 一個方法調用,根據對象不對調用不同的方法
輸出:
D:\wwwroot\pyiteam\venv\Scripts\python.exe D:/wwwroot/pyiteam/mypro_obj/mypy02.py
小狗汪汪汪...
小豬昂昂昂...
Process finished with exit code 0