多态的作用
先看下面的代码:
class Animal:
def __init__(self, name):
self.name = name
class Cat(Animal):
def talk(self):
print('my name is cat')
class Dog(Animal):
def talk(self):
print('my name is dog')
# 这个函数接收一个animal参数,并调用它的animal_talk方法
def animal_talk(obj):
obj.talk()
d = Dog()
c = Cat()
animal_talk(d)
animal_talk(c)
------------------
打印结果:
my name is dog
my name is cat
猫、狗都继承了动物类,并各自重写了talk方法。animal_talk()函数接收一个animal参数,并调用它的talk方法。可以看出,无论我们给animal传递的是狗、猫,都能正确的调用相应的方法,打印对应的信息。这就是多态。
而多态则是为了实现另一个目的—接口重用!多态的作用,就是为了类在继承和派生的时候,保证使用“家谱”中任一类的实例的某一属性时的正确调用。
结语
感谢阅读,欢迎在评论区中发表自己不同的观点,若有其他问题请在评论区留言,喜欢的朋友请多多关注转发支持一下。
领取专属 10元无门槛券
私享最新 技术干货