Python 入门笔记21——面向对象进阶
super()获得父类定义
在子类中,如果想要获得父类的方法时,我们可以通过 super()来做。
super()代表父类的定义,不是父类对象。
代码实例:
#测试super(),代表父类的定义,而不是父类的对象
class A:
def say(self):
print("A:",self)
class B(A):
def say(self):
#A.say(self)
super().say()
print("B:",self)
A().say()
B().say()
输出结果:
A: <__main__.A object at 0x000002C49F3B1850>
A: <__main__.B object at 0x000002C49F3B1850>
B: <__main__.B object at 0x000002C49F3B1850>
结果分析:调用类A的say方法会打印A:A的实例。B的say方法通过super()获得父类A的say方法的定义,在调用类B的say方法会打印A:B的实例,B:B的实例。
版权声明:本文为weixin_45031468原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。