多态:一种接口,多种实现
封装可以隐藏实现细节,使得代码模块化,继承可以扩展已存在的代码模块,它们的目的都是为了代码重用,而多态是为了实现接口重用
class Animal:
def __init__(self,name):
self.name = name
def talk(self):
pass
@staticmethod
def animal(obj):
obj.talk()
class Cat(Animal):
print('meow')
class Dog(Animal):
print('woof')
c = Cat('wuyifan')
d = Dog('luhan')
Animal.animal(c)#只需要传入相应对象,使用同样的接口即可调用不同的方法
Animal.animal(d)