📅  最后修改于: 2023-12-03 15:22:37.513000             🧑  作者: Mango
在面向对象编程(OOP)中,函数覆盖(也叫函数重写)是指子类重新定义(覆盖)父类中的函数。使用函数覆盖,子类可以改变原有函数实现方式,实现多态。
假设有一个父类Animal
,其中定义了一个move
函数用于动物的移动。
class Animal:
def move(self):
print("Animal is moving")
现在有一个子类Dog
,我们希望Dog
的移动方式不同于Animal
,那么我们可以通过函数覆盖来实现。
class Dog(Animal):
def move(self):
print("Dog is running")
这样,当我们调用Dog
对象的move
函数时,将输出Dog is running
而不是Animal is moving
。
dog = Dog()
dog.move()
上述语句会输出Dog is running
。
super()
调用父类函数。