includeとextend
Moduleをクラスに追加する場合includeとextendがある。
includeはクラスに追加するだけ。
C言語のincludeにちょっと似ている。
extendはこの前refeで発見した。
調べて自分が理解した範囲では、Moduleのメソッドをselfの特異メソッドとして追加する。
以下のようになる。
module Hoge def hoge "hoge" end end class Foo include Hoge end class Var extend Hoge end foo = Foo.new foo.hoge #=>"hoge" Foo.hoge #=>error var = Var.new var.hoge #=>error Var.hoge #=>"hoge"