这延伸了什么?

时间:2014-06-19 05:21:41

标签: ruby

给出这个例子:

module A
  module B
    def foo
      puts 'foo'
    end

    extend A::B
  end
end

extend A::B做了什么?

1 个答案:

答案 0 :(得分:3)

它自己扩展模块A :: B,实际上是方法foo可用于模块对象A::B本身。

如果没有该行,您将无法在代码中调用A::B.foo

您可能希望详细了解Ruby extend aModule vs include aModule