_J Blog

学んだ事のまとめやメモなどが中心です

クラスインスタンス変数にアクセサを利用しアクセスする

クラスインスタンス変数、モジュール変数に対して、
attr_reader, attr_accessor などのアクセサでアクセスする方法
※利用頻度が低い!って話はおいておいて・・・

class TestClass
  @var = 0 
  class << self
    attr_accessor :var
  end
end

p TestClass.var
#=> 0
p TestClass.var += 1
#=> 1
p TestClass.var += 1
#=> 2


module TestModule
  @var = 0 
  class << self
    attr_accessor :var
  end 
end

p TestModule.var
#=> 0
p TestModule.var += 1
#=> 1
p TestModule.var += 1
#=> 2