目次> 第4章> 4.4 | TOPUPPREVNEXT |
4.3 節で解説しているプログラム CountButton2.java のスタイルは、少し古い書き方です。
理由は以下のとおりです。
たしかに、ローカル変数はフレームを作成し終わると消えてしまい、
アクションリスナの中からは参照できませんが、
だからといっていきなり「クラス変数」を使用する必要はなく、
「インスタンス変数」で充分です。
変数の種類によって、参照できる(時間的な)範囲が変わります。以下のとおりです。
種類 | いつ参照できるか | 宣言の方法 | 参照の方法 |
---|---|---|---|
ローカル変数 | 宣言した後、メソッドを実行している時だけ参照可能 | メソッドの中で宣言 | 変数の名前のみを記述 |
インスタンス変数 | インスタンスを生成後、 または、コンストラクタ内(インスタンス生成中) |
メソッドの外 static をつけない |
インスタンス名.変数名 コンストラクタ内では 変数名のみを記述 |
クラス変数 | いつでも | メソッドの外 static をつける |
クラス名.変数名 クラス内では 変数名のみを記述 |
インスタンス変数は、インスタンスの生成中(コンストラクタの中)か、インスタンス生成後でしか参照できませんから、 1.2 節のスタイルでなければ利用できません。
次のプログラムは、コンストラクタを記述し、クラス変数をインスタンス変数に変更したものです。
ソースプログラム CountButton4.java
CountButton2.java からの 変更点
更新日:2008/05/03 | TOPUPPREVNEXT |