|
前
-
コピー
-
次
-
目次
インスタンス変数インスタンス変数は`@'で始まる名前で指定される.インスタンス 変数とは`self'で参照されるオブジェクトに固有の変数である.同 じ種類のオブジェクトでも,異なるオブジェクトであればインスタ ンス変数の値はそれぞれ異なる.オブジェクトの外側からは直接イ ンスタンス変数の値を見たり,変えたりできないので,そうするた めにはなんらかのメソッドを経由する必要がある.初期化されてい ないインスタンス変数の値は`nil'である. rubyのインスタンス変数は宣言が要らない.これはオブジェクトが 柔軟な構造を持っていることを意味している.実際,rubyのインス タンス変数は動的に増える. ruby> class InstTest ruby| def foo(n) ruby| @foo = n ruby| end ruby| def bar(n) ruby| @bar = n ruby| end ruby| end nil ruby> i = InstTest.new #<InstTest:0x83678> ruby> i.foo(2) 2 ruby> i #<InstTest: @foo=2> ruby> i.bar(4) 4 ruby> i #<InstTest: @foo=2, @bar=4> 前 - コピー - 次 - 目次 |