51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3086|回复: 2
打印 上一主题 下一主题

inclusde load require extend的区别

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2009-8-25 17:39:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1.include VS require
    include同大多数其他的编程语言一样跑另一个文件(run another file.)。它还可以追踪到在过去中您刚才要求的,不会要求相同的文件两次。去运行其他文件没有额外的功能,你可以用load的方法。
  这个include方法把所有的方法从另一个模块,包括他们到当前的模块。这是一个language-level件事与file-level和要求。include方法的主要途径是和其他“类”扩展模块(通常被称为mix-ins)。
    include主要用来将一个模块插入(mix)到一个类或者其它模块。这个模块的方法在引入它的类或模块中以函数的形式调用(没有一个receiver)。这个指令运行时会执行Module.append_features方法
2.require vs load

   LOAD 一般是用在irb中的
         装载并执行aFileName文件,文件搜索方法同上面的require。wrap是可选参数,默认为false,如果设为true,则这个文件将在匿名模块下运行,从而包括调用者的名字空间。任何aFileName里面的局部变量在装载它的环境下是不可用的。
   require 是用于脚本中
eg:加载A B2个类  其中A中使用了B类 B中也使用了A类
require ---加载的文件不需要后缀(.*),加载文件时只会加载一次 就是说他加载了A B一次
load ---加载的时候 就会加载A 然后在去加载B 加载b 然后在去加载A  就这样循环了。。。。

3.require load include

include :主要作用于.rb格式等文件的模块
require :主要作用于.rb格式等文件
load:同require一样作用于.rb格式等文件

4.extend

extend 用来在一个对象(object,或者说是instance)中引入一个模块,这个类从而也具备了这个模块的方法。

[ 本帖最后由 Spark.lee 于 2009-8-25 18:00 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2009-8-25 17:48:02 | 只看该作者
顶哦,偶是沙发Ing
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2009-8-27 16:15:38 | 只看该作者
include有“糅合”功能,可以当接口用。
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-21 21:58 , Processed in 0.067911 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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