89. Python中 多態的理解

目錄

多態

關於多態注意以下兩點:


多態

多態(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

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章