Python中的多态不同于C++、Java中的多态,没有前者要求的严格。
class Dog(object):
def print_self(self):
print("大家好!")
class Dog_2(Dog):
def print_self(self):
print("hello everyone!")
def introduce(temp):#多态的体现
temp.print_self()#如果temp是传入的子类对象则调用子类的此方法,反之调用父类的方法。
dog1 = Dog()
dog2 = Dog_2()
introduce(dog1)
introduce(dog2)
打印结果:
#大家好!
#hello everyone!
Python是门动态语言,所以调用时不会检查类型,只要有这个方法,参数正确就能正常运行。
这就是Python的多态