かずきのBlog@hatena

日本マイクロソフトに勤めています。XAML + C#の組み合わせをメインに、たまにASP.NETやJavaなどの.NET系以外のことも書いています。掲載内容は個人の見解であり、所属する企業を代表するものではありません。

moduleとclass

なんか一緒っぽい。
本にも、継承ツリーに入るみたいなこと書いてあった。
実験だ!!

class Base
    attr_accessor :base
    
    def initialize base = "default base"
        puts "Base::initalize"
        self.base = base
    end
end

class Drived < Base
    def initialize
        super
    end
end

d = Drived.new
puts d.base

module Base
    attr_accessor :base
    
    def initialize base = "default base"
        puts "Base::initalize"
        self.base = base
    end
end

class Drived
    include Base
    def initialize
        super
    end
end

d = Drived.new
puts d.base

を動かしてみた。

実行結果はどちらも

Base::initalize
default base