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

 

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