ruby_类的调用及require的使用

在文件arrayTest_1中,定义class Liuyang内容如下:(通过require File.expand_path('../arrayTest_2',__FILE__) 来包含其他文件的文件)

require File.expand_path('../arrayTest_2',__FILE__)
class Liuyang
  def function_1
    puts "function_1"
  end
end

在同一级目录下新建文件arrayTest_2.rb,补充定义class Liuyang:

class Liuyang
  def function_2
    puts "function_2"
  end
end

可以通过只引用arrayTest_1.rb来获取class Liuyang的所有信息:

require File.expand_path('../arrayTest_1',__FILE__)
test = Liuyang.new
test.function_1
test.function_2

扩展:

  1.引用当前rb同目录下的一个文件(文件名:file_to_require.rb)的4种方法:

    a. require File.join(__FILE__,'../file_to_require')

    b. require File.expand_path('../file_to_require',__FILE__)

    c. require File.dirname(__FILE__)+'/file_to_require'

    // __FILE__为常量,表示当前文件的绝对路径,如/home/oldsong/test.rb

    d. $LOAD_PATH.unshift(File.dirname(__FILE__))    //把目录加入LOAD_PATH变量中,然后可直接引用文件名。

              

  2. 引用一个目录下所有文件

    

原文地址:https://www.cnblogs.com/liuyang92/p/5918439.html