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

Project1

 找回密码
 注册会员
搜索
12
返回列表 发新帖
楼主: dbshy
打印 上一主题 下一主题

Module有什么用

 关闭 [复制链接]

Lv1.梦旅人

辉瑞中国首席研究员<

梦石
0
星屑
50
在线时间
142 小时
注册时间
2008-1-18
帖子
2129
11
 楼主| 发表于 2008-2-16 06:12:57 | 只看该作者
LS什么意思
回复 支持 反对

使用道具 举报

Lv5.捕梦者

御灵的宠物

梦石
12
星屑
8438
在线时间
88 小时
注册时间
2006-12-11
帖子
3148

第2届TG大赛亚军

12
发表于 2008-2-16 08:15:03 | 只看该作者
Module可以用include被包含在class里边……这是我唯一觉得它有用的地方……其他的我知道得和LZ一样多……嗯……
GJM帮助文档……
Module
模块的类。

父类Object
方法self === obj
该方法主要用在 case 语句的比较中。若 obj 与 self 之间存在 Object#kind_of? 关系时就为真。也就是说,在 case 中检查类、模块的所属关系。

str = String.new
case str
when String     # 计算 String === str
  p true        # => true
end

私有方法attr_accessor(name ... )
为 name 属性定义读取和写入的方法。name 可以是 Symbol 或字符串。

以此方法定义的方法的定义如下。

def name
  @name
end
def name=(val)
  @name = val
end

attr_reader(name ... )
定义 name 属性的读取方法。name 可以是 Symbol 或字符串。

以此方法定义的方法的定义如下。

def name
  @name
end

attr_writer(name ... )
定义 name 属性的写入方法(name=)。name 可以是 Symbol 或字符串。

以此方法定义的方法的定义如下。

def name=(val)
  @name = val
end

include(module ... )
对指定模块的性质(方法或常数)进行添加。返回 self。include 正是为实现 Mix-in(糅合)功能而设计的,而 Mix-in 取代了多重继承。

class C
  include FileTest
  include Math
end

添加模块功能时,先要突破类的继承关系,而后插入模块就可以实现功能的扩展。所以在搜索方法等过程中,首先要搜索添加的模块,然后才搜索父类。

若多次 include 同一个模块时,则只有首次 include 是有效的。若 include 引起模块间的循环继承时,将引发 ArgumentError 异常。




我的Lofter:http://nightoye.lofter.com/

回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-1-21
帖子
103
13
发表于 2008-2-16 08:33:14 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

SB們大家好<

梦石
0
星屑
50
在线时间
3 小时
注册时间
2008-1-7
帖子
457
14
发表于 2008-2-16 08:51:59 | 只看该作者
以下引用血色№涟漪于2008-2-16 0:33:14的发言:

RGSS仅此而已了。
不是留给做游戏的调的方便Module没啥作用,数据记录在$game_temp,$game_system,$game_party就得了。

以下引用趙雲于2008-2-15 22:09:00的发言:
module 必须大写


是module后面东西的第一个字母必须大写吧?或者你在不懂装懂?
module大写任何一个字母游戏都完蛋@#@!#$了。


[本贴由作者于 2008-2-16 0:33:36 最后编辑]


简略点表达而已,用得着这么毒蘑菇吗……{/gg}
这不是6R,我对自己说。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-1-13 07:28

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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