Ruby初心者スレッドPart4
■ このスレッドは過去ログ倉庫に格納されています
0556デフォルトの名無しさん
2006/03/10(金) 12:02:30ぜんぜん意味わからん。やりたいことはこれなんだろうけど、
>別に定数にこだわってるわけじゃないんですが、Baseから複数サブクラス
>をつくりそれぞれで同名かつ別の変数を使いたいのでクラス変数ではだめなので…
クラスインスタンス変数じゃだめなのか?これならサブクラス間で違う値になるし、値はクラスごとに1つなので同じクラスに属するインスタンスなら同じ値を共有できる。
class Parent
@value = nil
def self.value
@value
end
def self.value=(v)
@value = v
end
end
class Child1 < Parent
@value = 'foo'
end
class Child2 < Parent
@value = 'bar'
obj
p Child1.value #=> "foo"
p Child2.value #=> "bar"
またインスタンスメソッドから参照するときは self.class.value とself.class.value= で参照できる。
■ このスレッドは過去ログ倉庫に格納されています