设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1866|回复: 4
打印 上一主题 下一主题

[已经解决] 请教关于class << moudle的意思

[复制链接]

Lv3.寻梦者

梦石
0
星屑
3298
在线时间
1120 小时
注册时间
2009-4-15
帖子
815
跳转到指定楼层
1
发表于 2015-3-16 22:27:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
常常在大神们的脚本里看到先是moudle xx,然后在后面的脚本里来个class << xx,以前学的语言里没接触过这类语法,所以想问问,class << xx是什么意思?这样子有什么意义?既然有了class << xx,前面为何还定义成moudle呢,直接定义成class不好吗?

Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
21626
在线时间
9413 小时
注册时间
2012-6-19
帖子
7118

开拓者短篇九导演组冠军

2
发表于 2015-3-16 22:42:52 | 只看该作者
本帖最后由 喵呜喵5 于 2015-3-17 13:14 编辑

涉及元编程相关,并没有必须搞懂的必要,直接记住然后使用就好了,
如果一定要弄明白的话,关键字: Ruby eigenclass 去搜索一下看看相关的文章吧。

具体的,请思考下面这段代码:

RUBY 代码复制
  1. class A
  2.   def hello
  3.     p 'hello'
  4.   end
  5. end
  6. a1 = A.new
  7. a2 = A.new
  8. def a2.hello  
  9.   super
  10.   p "world"
  11. end
  12.  
  13. a1.hello
  14. a2.hello


a2的 hello 方法存在于什么地方呢?

评分

参与人数 1梦石 +1 收起 理由
taroxd + 1 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3298
在线时间
1120 小时
注册时间
2009-4-15
帖子
815
3
 楼主| 发表于 2015-3-16 23:02:39 | 只看该作者
喵呜喵5 发表于 2015-3-16 22:42
涉及元编程相关,并没有必须搞懂的必要,直接记住然后使用就好了,
如果一定要弄明白的话,关键字: Ruby e ...

看了你的例子,我觉得和继承有点类似,继承了这个方法,但是重写了这个方法??
可是你这个是实例的方法被改变了,只有这个实例被改变,那class << module呢?module下的所有方法全部被改变?只是为了方便module下的self.xx函数能用alias?
ps:1楼写错了,把module写成了moudle……

点评

所以都说了关键字: Ruby eigenclass 自己先去搜索一下啊…………= =  发表于 2015-3-16 23:06
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (版主)

…あたしは天使なんかじゃないわ

梦石
0
星屑
2208
在线时间
4033 小时
注册时间
2010-10-4
帖子
10779

开拓者贵宾

4
发表于 2015-3-17 12:34:28 手机端发表。 | 只看该作者
本帖最后由 taroxd 于 2015-3-17 12:35 编辑
tan12345 发表于 2015-3-16 23:02
看了你的例子,我觉得和继承有点类似,继承了这个方法,但是重写了这个方法??
可是你这个是实例的方法 ...


没有搞懂的必要。想搞懂的话,推荐的参考书籍:Metaprogramming Ruby 2

另外,这个类的官方叫法是 singleton class,你可以找找相关资料
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3298
在线时间
1120 小时
注册时间
2009-4-15
帖子
815
5
 楼主| 发表于 2015-3-17 21:59:59 | 只看该作者
taroxd 发表于 2015-3-17 12:34
没有搞懂的必要。想搞懂的话,推荐的参考书籍:Metaprogramming Ruby 2

另外,这个类的官方叫法是 singl ...

昨晚看了喵大的回复后已百度,解了一般惑,还有一般没解~不过既然2位大大都说没必要搞懂,好吧,将就了~
咦,论坛啥时候多了个此回复解决我的问题按钮这个功能了?太久没提问out了~

点评

今天刚有的  发表于 2015-3-17 22:07
回复 支持 反对

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-15 21:58

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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