Python中的多态理解

首先Python天生支持多态。例如:

class List:
    def __len__(self):pass
class Tuple:
    def __len__(self):pass

def len(li_tu):
    return li_tu.__len__()

这里的List和Tuple都是自己写代码中的_len_方法,而不是通过创建一个父类去约束它。其优点是:松耦合,即每个类中的方法命名不受另外的类中的方法修改影响。缺点:太随意了,只能靠自觉。

Python的这种叫“鸭子类型”。而java实现多态,要通过创建父类而存在。

 

posted @ 2019-01-18 15:01  hisweetyGirl  阅读(595)  评论(0编辑  收藏  举报