Python 继承:子类调用父类方法的原因解析

以下代码展示了 Python 中子类继承父类并调用父类方法的示例:

class Parent:
    def pprt(self):
        print(self)

class Child(Parent):
    def cprt(self):
        print(self)

c = Child()
c.cprt()
c.pprt()

为何 c.cprt()c.pprt() 结果一样?

这是因为 Child 类继承了 Parent 类,继承后,Child 类就拥有了 Parent 类中的所有方法,包括 pprt() 方法。

当调用 c.pprt() 时,实际上调用的是 Parent 类中的 pprt() 方法,因为 cChild 类的实例,所以 self 指向的是 Child 类的实例 c。但是 Parent 类中的 pprt() 方法并没有使用 self 中的任何属性或方法,所以输出结果是一样的。

简单来说,子类继承了父类,就获得了父类的所有方法。调用子类对象的父类方法,本质上是在调用父类的方法,只是 self 指向的是子类对象而已。

Python 继承:子类调用父类方法的原因解析

原文地址: https://www.cveoy.top/t/topic/noRV 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录