查看: 1475|回复: 2

[已经解决] 求解super

[复制链接]

幻想天神

梦石
0
星屑
55
在线时间
166 小时
注册时间
2012-3-24
回帖
355
发表于 2013-4-29 12:32:31 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

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

×
本帖最后由 风若·飘絮 于 2013-4-29 12:34 编辑

看默认脚本时,看到window_base 定义完初始函数后就用了super(),瞬间晕了。。

后来看到下面的函数,super还可以不加括号单独用,,,又晕了。。

求解super介绍和用法


还有个问题,变量名前加self,对变量会有什么影响?
梦石
0
星屑
122
在线时间
552 小时
注册时间
2012-8-18
回帖
1392
发表于 2013-4-29 12:47:36 | 显示全部楼层
super是调用父类的同名方法嘛……super()代表无参数的调用,super代表本方法的所有参数原封不动的传递给该方法在调用
至于self……那不能算变量……应该算是调用一个方法然后返回了一个变量

评分

参与人数 1星屑 +66 收起 理由
hys111111 + 66 我很赞同

查看全部评分

我要填坑!我要背单词!我要学日语!我要每天锻炼!
好吧呵呵= =
回复

使用道具 举报

梦石
0
星屑
432
在线时间
4175 小时
注册时间
2010-6-26
回帖
6276
发表于 2013-5-22 22:23:53 | 显示全部楼层

我来具体说明吧

本帖最后由 eve592370698 于 2013-5-23 09:28 编辑

[pre lang="ruby" line="1"]class AAA
def pp
p "蜡笔小新"
end
end[/pre]
然后咱们做一个子类[pre lang="ruby" line="1"]class ABC < AA

end[/pre]
表示ABC这个类继承了AA,然后可以设置这四种情况
定义方法 不定义空白带着[pre lang="ruby" line="1"]def pp
p "风间"
end[/pre]
[pre lang="ruby" line="1"]def pp
super()
p "风间"
end[/pre]
[pre lang="ruby" line="1"]def pp
p "风间"
super()
end[/pre]
运行
  1. ABC.new.pp
复制代码
结果
蜡笔小新风间 蜡笔小新
风间
风间
蜡笔小新
原因 直接使用父类方法 父类方法内容完全改变 在p “风间”之前执行父类的pp方法 在p “风间” 之后执行父类pp这个方法

点评

表格的第二列第三行好像打錯了...  发表于 2013-5-23 04:05

评分

参与人数 1星屑 +66 收起 理由
hys111111 + 66 代码都可以这样发…………

查看全部评分

潜水,专心忙活三次元工作了……
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部