码迷,mamicode.com
首页 > 编程语言 > 详细

Python学习-类的多态

时间:2018-01-21 21:31:37      阅读:187      评论:0      收藏:0      [点我收藏+]

标签:raise   style   pos   fine   log   gpo   int   ted   abstract   

#一个接口,多种实现
#实现接口的重用


class Animal:
    def __init__(self, name):  # Constructor of the class
        self.name = name

    def talk(self):  # Abstract method, defined by convention only
        pass #raise NotImplementedError("Subclass must implement abstract method")


#这里就是多态的实现
    @staticmethod
    def animal_talk(obj):
        obj.talk()

class Cat(Animal):
    def talk(self):
        print(Meow!)


class Dog(Animal):
    def talk(self):
        print(Woof! Woof!)


d = Dog("陈荣华")
#d.talk()

c = Cat("徐良伟")
# c.talk()
#
# def animal_talk(obj):
#     obj.talk()

Animal.animal_talk(c)
Animal.animal_talk(d)

 

Python学习-类的多态

标签:raise   style   pos   fine   log   gpo   int   ted   abstract   

原文地址:https://www.cnblogs.com/Ian-learning/p/8325482.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!