day27 多继承 super 详细用法

本文通过实例对比了在Python中使用与未使用super()进行多继承的区别,阐述了super()如何帮助解决多继承中父类方法调用的问题,避免因父类更名带来的维护难题。
 1 # 没有使用super的时候的多继承,如果父类的名字变了。或者有什么更改,需要全部都一起改
 2 class FooParent:
 3     def bar(self, message):
 4         print(message)
 5 
 6 
 7 class FooChild(FooParent):
 8     def bar(self, message):
 9         FooParent.bar(self, message)  # 如果FooParent 改成 BooParent 这也要要改
10 
11 
12 FooChild().bar("Hello, Python.")
13 
14 
15 # 有super的多继承,父类的更改也不会对子类的调用造成影响
16 class FooParent:
17     def bar(self, message):
18         print(message)
19 
20 
21 class FooChild(FooParent):
22     def bar(self, message):
23         super().bar(message)
24 
25 
26 FooChild().bar("Hello, Python.")

 

转载于:https://www.cnblogs.com/shijieli/p/9921743.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值