鱼C论坛

 找回密码
 立即注册
查看: 2131|回复: 5

有没有好心人给小白讲一下super函数的用法

[复制链接]
发表于 2017-9-2 19:10:58 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
super函数的用法  小白伸手党  勿喷谢谢

还有摘自csdn专栏的一段文字:

“所以对于类的继承体系,我们可以看做一个图,而每一个类看做一个节点,那么super()机制的执行顺序是按照图的广度优先搜索算法查找super()的父类。
后续总结:

  1. super()是一个类名而非函数,super(class, self)事实上调用了super类的初始化函数,产生了一个super对象;

        2 super()机制必须要用新式类,否则会报错;

        3 super()或直接父类调用最好只选择一种形式。”


所以说这里说super()是类名是否准确?
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2017-9-2 19:44:15 | 显示全部楼层
super是取mro链上的下一个类
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-9-2 20:00:28 | 显示全部楼层
川本姨夫 发表于 2017-9-2 19:44
super是取mro链上的下一个类

MRO,是英文Maintenance、RepairandOperations三个词的缩写,指工厂或企业对其生产和工作设施、设备进行保养、维修,保证其运行所需要的非生产性物料
mro是这个意思?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-9-2 20:02:04 | 显示全部楼层
川本姨夫 发表于 2017-9-2 19:44
super是取mro链上的下一个类

老司机能不能给解释一哈  还有能够讲一讲super类的用法
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-9-2 20:27:42 | 显示全部楼层
简单的理解,super()你就当作是父类的类名就好了。
至于这个类名是哪个,就是由mro决定的。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-12-7 21:30:22 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-12-23 15:30

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表