Python学习-类的多态

Posted Ian_Learning

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python学习-类的多态相关的知识,希望对你有一定的参考价值。

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


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学习-类的多态的主要内容,如果未能解决你的问题,请参考以下文章

Python学习-类的多态

Python学习笔记-面向对象进阶封装多态继承

Python学习之旅---多态(类的相关知识,面向对象三大特性:继承-多态-封装)

Python学习之旅---多态(类的相关知识)

Python学习之旅---封装与反射(类的相关知识,面向对象三大特性:继承-多态-封装)

python类的多态