Python - 类的覆盖

在Python中,类的覆盖是一个概念,子类提供了对其父类中已经定义的方法的不同实现。 通过这种方式,子类可以根据自己的需求修改或扩展父类的行为。

✏️ 语法

Python中类的覆盖的语法如下:

python
class 父类:
    def 方法名(self):
        print("hi")  # 父类方法的实现

class 子类(父类):
    def 方法名(self):
        print("hello world")  # 子类方法覆盖父类方法的实现

在上面的代码中,子类继承自父类并覆盖了方法名方法。

📘 示例

python
class 动物:
    def 声音(self):
        print("动物发出声音")

class (动物):
    def 声音(self):
        print("狗叫")

class (动物):
    def 声音(self):
        super().声音()
        print("猫喵喵叫")

animal = 动物()
animal.声音()  # 输出: 动物发出声音

dog = 狗()
dog.声音()

cat = 猫()
cat.声音()

在上面的示例中,动物是父类,是子类。 子类覆盖了父类动物声音方法,使它们发出不同的声音。 在子类中,如果需要调用父类的方法,可以使用super()函数来实现。