- # 多态是指一类事物有多种行态,
- # 例如: 动物有多种形态: 人, 狗, 猫
- # 他们有一些共同的特征: 吃, 喝, 拉, 撒
- # 多态性是指在不考虑实例类型的情况下使用实例
- # 对同一事物不同的类, 对象有不同的响应,
- # 例如: 放假了, 有的同学回家, 有的去旅游, 有的去兼职
- # 有的在敲代码 (就是我啦)
- # 列表, 字符串, 字典都有 len 属性, 但是是不同的执行过程.
- class Animal():
- def talk(self):
- pass
- class People(Animal):
- def __init__(self,name):
- self.name = name
- def talk(self):
- print("%s 说人话"%self.name)
- class Cat(Animal):
- def __init__(self,name):
- self.name = name
- def talk(self):
- print("%s 说猫话"%self.name)
- class Dog(Animal):
- def __init__(self,name):
- self.name = name
- def talk(self):
- print("%s 说狗话"%self.name)
- peo = People('wang')
- cat = Cat('cat')
- dog = Dog('dog')
- peo.talk()
- cat.talk()
- dog.talk()
- # 多态性的函数
- # 1, 增加了程序的灵活性,
- # 2, 增加了程序的课扩展性
- # 鸭子类型
- # python 崇尚鸭子类型, Python 崇尚鸭子类型, 即'如果
- # 看起来像, 叫声像而且走起路来像鸭子, 那么它就是鸭子'
- # python 程序员通常根据这种行为来编写程序. 例如, 如果想编
- # 写现有对象的自定义版本, 可以继承该对象
- # 也可以创建一个外观和行为像, 但与它无任何关系的全
- # 新对象, 后者通常用于保存程序组件的松耦合度.
来源: http://www.bubuko.com/infodetail-3158690.html