Ruby 初心者スレッド Part 19
■ このスレッドは過去ログ倉庫に格納されています
0409デフォルトの名無しさん
2008/05/04(日) 20:13:44すごい大雑把に説明すると、
クラスは鯛焼きプレートでインスタンスは鯛焼き。
def self.foo と定義したものはクラスメソッド。
def bar と定義したものはインスタンスメソッド。
インスタンスメソッドはインスタンスがないと (Hoge.new しないと) 実行できない。
クラスメソッドはクラスが定義されていれば実行できる。インスタンスは不要。
インスタンスメソッドからクラスメソッドを呼ぶのは可能。
def bar
self.class.foo
end
クラスメソッドからインスタンスメソッドを呼ぶには new しないとだめ。
あちこちに self が出てきて分からなくなってきたら p self として確認すればいいんじゃね。
■ このスレッドは過去ログ倉庫に格納されています