目录
多态
多态(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