模塊(Module)是一種把方法、類和常量組合在一塊兒的方式。ruby
module Identifier statement1 statement2 ........... end
模塊(Module)爲您提供了兩大好處:code
模塊(Module)定義了一個命名空間,至關於一個沙盒,在裏邊您的方法和常量不會與其餘地方的方法常量衝突。class
模塊相似與類,但有一下不一樣:module
模塊常量命名與類常量命名相似,以大寫字母開頭。方法定義看起來也類似:模塊方法定義與類方法定義相似。命名空間
經過類方法,能夠在類方法名稱前面放置模塊名稱和一個點號來調用模塊方法,能夠使用模塊名稱和兩個冒號來引用一個常量。引用
module Trig PI=3.14 def Trig.sin(x) puts "sin:#{x}" end def Trig.cos(x) end end Trig.sin("haha")
就像類方法,當您在模塊中定義一個方法時,您能夠指定在模塊名稱後跟着一個點號,點號後跟着方法名。方法