私はクラスを持っている:ルビー - クラスとインスタンス変数変数
class Foo
def self.test
@test
end
def foo
@test = 1
bar
end
private
def bar
@test = 2
end
end
object = Foo.new.foo
Foo.test
# => nil
私は出力にそれを得ることができる唯一の方法は、「2」@test
クラス変数を作ることです。インスタンス変数を使用してFoo.test
で表示できる方法はありますか?
は 'クラスメソッドであるFoo.test'は、インスタンス変数にアクセスすることはできません。 –
@HoManだからこそ私は '@@ test'を使うのは簡単だが「コードの匂い」と考えているからだ。クラスインスタンス変数を使用する必要があります。 – YoloSnake
本当の目標は何ですか?異なるオブジェクトを使用しているので、明らかに同じインスタンス変数にアクセスすることはできません。 –