static修飾子
変数・メソッドに付けることのできる修飾子。
インスタンス化せずとも呼び出すことが出来る。また、元のクラスをインスタンス化した場合でも、static変数およびstaticメソッドは一か所に管理される。(=各インスタンスがそれぞれstatic変数を持つというわけではない。)
staticメソッドからはstatic変数またはstaticメソッドのみ呼び出すことが出来る。
また、クラスにはクラスファイルがロードされた際の処理を定義する staticイニシャライザ を定義できる。
staticイニシャライザ
class A {
static {
// 処理
}
}
アクセス修飾子
private:同一クラスからアクセス可能
(デフォルト):同一パッケージ内のクラスからアクセス可能
protected:同一パッケージまたはサブクラスからアクセス可能
public:どのクラスからでもアクセス可能
※publicなクラスはクラスファイルにつき一つのみ、かつファイル名と同名のクラスのみ定義可能