Rubyのincludeとextendの違いについて
つまりはこういうことです
ポイントは32行目と38行目
ancestorsメソッドでご先祖さんを取得しています。
includeしたbarクラスは、barとfooが取得できていますが、
extendしたbuzクラスは、fooが取得できていません。
extendはクラスに定義されるのではなく、
selfの特異メソッドとして定義されるのですねー
間違えてたら教えてw
( ̄(エ) ̄)彡☆
参考
instance method Module#ancestors
instance method Object#singleton_methods
instance method Enumerable#grep
instance method Module#instance_methods
0 件のコメント:
コメントを投稿