「Ruby」クラスインスタンス変数を利用するサンプル
説明
インスタンス変数はカレントオブジェクトselfに属しているため、Class クラスのオブジェクトに属しているインスタンス変数のことをクラスインスタンス変数といいます。
使用例
#!/usr/bin/ruby
# -*- coding: UTF-8 -*-
class UserClass
@name = "user007"
def self.class_attribute
@name
end
def name=(value)
@name = value
end
def name
@name
end
end
p UserClass.instance_variables
p UserClass.instance_variable_get(:@name)
p UserClass.class_attribute
cft = UserClass.new
cft.name = "user009"
p cft.name
p UserClass.class_attribute
p cft.instance_variable_get(:@name)
p UserClass.instance_variable_get(:@name)
実行結果
>ruby test.rb
[:@name]
“user007"
“user007"
“user009"
“user007"
“user009"
“user007