rubyのクラスメソット

クラスに関連する操作をするためにクラスメソットを定義する。

んで。このクラスメソットの定義方法は

def クラス名.メソット

end

になる

class HelloWorld

    def HelloWorld.hello()

        print 'hello' 

    end

end

こんな感じ。

クラス定義の中のselfはその暮らすオブジェクト自身を参照するから。

selfを使っても書ける。

class HelloWorld

    def self.hello()

        print 'hello' 

    end

end

こんな感じ。最後が良くわからんのだが。

class HelloWorld

   class <<  self # HelloWorldでもOK

        def hello()

            print 'hello' 

        end

        def bye()

            print 'bye' 

        end

end

複数のクラスメソットを定義したい時はこうするのがベターかな。

「たのしいRuby」によると最後の表記が元々あった形で、

前述が後から出てきた簡易版らしい。

まあ1つだけクラスメソットを定義したい時とかは便利なのかな。複数表現が有るのは慣れると楽しいんだけど、初期コストが上がると思うんだけどなー。。。