Rubyはインスタンス変数とクラス変数を区別できますか?

1件の回答

回答を書く

1033374

2026-01-29 22:35

+ フォロー

Rubyはインスタンス変数とクラス変数を

きちんと区別できますよ。₍ᐢ..ᐢ₎⊹



インスタンス変数はそのオブジェクトごとに

別々に持たれるのに対して、クラス変数は

同じクラスに属する全インスタンスで

共有されます。



書き方も @name と @@name で違うので

意識して使い分ければ混乱することはあまり

ありません。



ただ、Rubyではクラス変数は挙動が少し独特で

継承関係でも共有されてしまうため

最近はクラスインスタンス変数(@var をクラスの中で使うやり方)のほうが好まれる

ことも多いです。用途に合わせて選べば

問題なく使えますよ。

うったえる有益だ(0シェアするブックマークする

Copyright © 2026 AQ188.com All Rights Reserved.

博識 著作権所有