この記事では、オブジェクト指向プログラミングにおけるクラス変数とインスタンス変数の意味と違いや使い分けについて解説します。
クラス変数
クラス変数とは、そのクラスの全てのインスタンスで共有される変数です。
グローバル変数(ファイル内全体)のクラス版のようなものです。
クラス変数は何度でも値を変更できます。
また、クラス変数はクラスメソッド、インスタンスメソッド、クラス定義式の中でアクセス可能です。
インスタンス変数
インスタンス変数とは、オブジェクトのインスタンス(実体)がそれぞれに持っている変数です。
オブジェクト内で値を保存しておくために利用されます。
コメント