言語
アーキテクチャ
開発環境
サーバ構築
ITスキル
自動出題採点アプリ
書籍検索
海外サイト翻訳
static修飾子は、変数およびメソッドに使用されます。
インスタンス変数はオブジェクトが作成されるときに初期化されるのに対して、 static変数はクラスのロード時に初期化されます。 また、static変数はインスタンス変数とは異なり、各オブジェクトごとに用意されるのではなく、クラスに対して1つだけ用意されます。
あるクラスをもとに複数のオブジェクトを生成している場合は、オブジェクト間で、同じstatic変数を共有して使用することになります。 このようにインスタンス化されたオブジェクト経由であっても同じstatic変数にアクセスすることになるため、 static変数は 参照変数名.static変数名 のアクセスだけではなく、クラス名.static変数名 でアクセスすることが出来ます。
static変数と同じく、staticメソッドもクラスにおける特定のオブジェクトではなく、
定義もとに属しています。
したがって、staticメソッドは、クラスのstaticメンバにしかアクセスできず、クラス内で定義されているstaticメソッドは、
クラスの非static変数およびメソッドにはアクセスできません。
なお、staticメソッドは、クラス名.メソッド名( )で呼び出しが出来るため、インスタンス化しなくても利用可能です。
Javaのstatic修飾子についてまとめると以下のようになります。
staticなメンバはクラスに所属しており、クラスにおける特定のオブジェクトには所属しない。 オブジェクト単位ではなく、クラス単位で用意される。
static変数はクラスのロード時に初期化される。 クラスのstaticメソッドは、そのクラスのstaticメンバにしかアクセスできない。
グループサイト zealseeds zealseedsラーニング zealseedsブックス 名か字 幸福の木の育て方
通算
(2006年12月26日以来)
Copyright (C) 2007-2009 zealseeds. All Rights Reserved.お問合せ