インスタンス変数()とは、Smalltalk等のオブジェクト指向言語において、オブジェクトのインスタンスごとに割り当てられた変数のことである。フィールド()、データメンバ()、メンバ変数()とも呼ばれる。それに対してクラス変数は、同じクラスに対する全てのインスタンスが同じ値を共有する。インスタンス変数は、インスタンスフィールド()あるいは、略して「フィールド」と呼ぶこともある(本来、この「フィールド」の意味には、「クラス変数」も含まれるが、インスタンス変数のプログラミング言語によってはインスタンス変数のことを「フィールド」と呼び、クラス変数とは名前を区別しているものもある)。UMLではインスタンス変数のことを属性()とも呼ぶ。上記の例において、barはクラスFooのインスタンス変数である。それに対して、bazはクラス変数である。以下のプログラムで、Fooクラスを用いてクラス変数とインスタンス変数の違いを示す。プログラム例実行結果上記のプログラムにおいて、foo1.bazとfoo2.bazはFooクラスのクラス変数を表している。つまり、foo1.bazとfoo2.bazが表しているインスタンスは同一である。そのため、結果として出力されるfoo1.bazとfoo2.bazの値は同じとなる。逆に、foo1.barとfoo2.barはインスタンス変数であり、独立した変数である。そのため、結果として出力されるfoo1.barとfoo2.barは異なった値となる。
出典:wikipedia
LINEスタンプ制作に興味がある場合は、
下記よりスタンプファクトリーのホームページをご覧ください。