在文件arrayTest_1中,定义class Liuyang内容以下:(经过require File.expand_path('../arrayTest_2',__FILE__) 来包含其余文件的文件)ui
require File.expand_path('../arrayTest_2',__FILE__) class Liuyang def function_1 puts "function_1" end end
在同一级目录下新建文件arrayTest_2.rb,补充定义class Liuyang:spa
class Liuyang def function_2 puts "function_2" end end
能够经过只引用arrayTest_1.rb来获取class Liuyang的全部信息:3d
require File.expand_path('../arrayTest_1',__FILE__) test = Liuyang.new test.function_1 test.function_2
扩展:code
1.引用当前rb同目录下的一个文件(文件名:file_to_require.rb)的4种方法:blog
a. require File.join(__FILE__,'../file_to_require')io
b. require File.expand_path('../file_to_require',__FILE__)function
c. require File.dirname(__FILE__)+'/file_to_require'class
// __FILE__为常量,表示当前文件的绝对路径,如/home/oldsong/test.rbtest
d. $LOAD_PATH.unshift(File.dirname(__FILE__)) //把目录加入LOAD_PATH变量中,而后可直接引用文件名。require
2. 引用一个目录下全部文件