所谓方法重写,就是子类对父类已有的方法,重新编写自己的实现版本,这个过程就叫做方法重写(override)。
说到方法重写,就不得不提多态。因为方法重写是实现多态的一种重要方式。
所谓多态,就是给不同的对象发送同样的消息,不同的对象执行了不同的行为。即多态允许我们以统一的接口来处理不同类型的对象。
在面向对象编程中,多态和方法重写通常一起使用,以实现更加灵活和强大的程序设计。
如何实现方法重写?
只需要在子类中定义一个与父类中方法同名的方法即可。Python会自动在调用时选择子类中的方法。
例:
class Animal:
def make_sound(self):
print("某种声音")
class Dog(Animal):
def make_sound(self):
# 方法重写
print("汪汪")
class Cat(Animal):
def make_sound(self):
# 方法重写
print("喵喵")
# 运行同一方法,根据对象的不同运行不同方法
def animal_sound(animal):
animal.make_sound()
my_dog = Dog()
my_cat = Cat()
# 根据传入的实例(如Dog或Cat),将调用实例重写的make_sound方法
animal_sound(my_dog) # 输出: 汪汪
animal_sound(my_cat) # 输出: 喵喵
标签:sound,Python,方法,081,多态,animal,重写,make
From: https://blog.csdn.net/mr_five55/article/details/140479658