- 什么是多态
在不考虑实例类型的情况下使用实例
- 例子
peo=People() dog=Dog() pig=Pig() def func(obj): obj.talk() func(pig)
- 鸭子类型
#如果看起来像、叫声像而且走起路来像鸭子,那么它就是鸭子,嘿嘿 在鸭子类型中,关注的不是对象的类型本身,而是它是如何使用的。例如,在不使用鸭子类型的语言中,我们可以编写一个函数,它接受一个类型为鸭的对象,并调用它的走和叫方法。 优点:松耦合,每个相似类之间没有影响 缺点:太随意,没有规范
- 鸭子类型例子
#二者看起来都像文件,因而就可以当文件一样去用 class TxtFile: def read(self): pass def write(self): pass class DiskFile: def read(self): pass def write(self): pass
python 面向对象 多态
猜你喜欢
转载自www.cnblogs.com/walthwang/p/10402814.html
今日推荐
周排行