一、多态
• 面向对象三大特性
封装 确保对象中数据的安全
继承 保证了对象的扩展性
多态 保证了程序的灵活性
多态从字面理解就是多种形态。
• Python中多态的特点
1、只关心对象的实例方法是否同名,不关心对象所属的类型;
2、对象所属的类之间,继承关系可有可无;
3、多态的好处可以增加代码的外部调用灵活度,让代码更加通用,兼容性比较强;
4、多态是调用方法的技巧,不会影响到类的内部设计。
class Duck():
def fly(self):
print('鸭子在水上飞起来了')
class Swan():
def fly(self):
print('天鹅在空中飞翔')
class Plane():
def fly(self):
print('飞机起飞了')
def fly(obj):
obj.fly()
d=Duck()
fly(d)
s=Swan()
fly(s)
p=Plane()
fly(p)
结果: