Ruby変数まとめ

Rubyの変数まとめ(初めてのRubyより)

先頭文字 種類 デフォルト値 名前の例
小文字またはアンダースコア ローカル変数 参照する前に代入が必要 local_variable
@ インスタンス変数 nil @instance_variable
@@ クラス変数 参照する前に代入が必要 @@class_variable
$ グローバル変数 nil $global_variable
class Variable
  @@class

  def test
    @instance
    puts "instance : " + @instance.to_s
    @test = "instance initalize"
    puts "instance : " + @instance.to_s
  end

  def local 
    local = "s"
    puts "local : " + local.to_s
    local = "local initalize"
    puts "local : " + local.to_s
  end
end

@@class = "class: initalize"
puts @@class

var = Variable.new
var.test
var.local

@@classを初期化しないで実行したら、以下のメッセージが表示されました。
variable.rb:21:in `<main>': uninitialized class variable @@class in Object (NameError)

@instanceについては問題なかったです。