Fay

多态

多态:

class An:
    def talk(self):
        pass

class Cat(An): #属于动物的另外一种形态:猫
     def talk(self):
         print('say miao')


class Dog(An): #动物的形态之二:狗
    def talk(self):
        print('say wangwang')

dog = Dog() #实例出一只狗#
Cat = Cat()  ##实例出一只猫
# peo、Cat都是动物,只要是动物肯定有talk方法,且他们都有talk方法
#于是我们可以不用考虑它们三者的具体是什么类型,而直接使用


#更进一步,我们可以定义一个统一的接口来使用
def func(An):
    An.talk()

# def func(obj): #这样写也可以,obj就是类自己嘛
#     obj.talk()

# 直接调用
func(dog)   #say wangwang
func(Cat)  #say miao

posted on 2018-09-27 21:40  sunny7  阅读(126)  评论(0编辑  收藏  举报

导航