JAVAのクラスは次のような形式を持つ
修飾子 class クラス名 {
フィールド定義の並び
メソッド定義の並び
}
修飾子
abstract
- クラスからオブジェクトを生成することができないことを示す
public
- ほかのパッケージのクラスからアクセスできることを示す
final
- サブクラスを作成できないことを示す
なし
- 同じパッケージのクラスだけからアクセスできることを示す
クラス名
定義するクラスの名前を指定する
フィールド定義の並び
private
- フィイールドがこのクラス内だけからアクセスできることを示す
protected
- フィールドがサブクラスまたは同じパッケージのクラスからアクセスできることを示す
public
- フィールドがほかのクラスからアクセスできることを示す
static
- フィールドが「クラス変数」であることを示す
final
- 「定数」を保持するフィールドであることを示す。このフィールドは、初期化することができるが
値は代入できない
なし
- 同じパッケージのクラスだけからアクセスできることを示す
メソッド定義の並び
abstract
- サブクラスで実装が定義されているメソッドであることを示す
private
- メソッドがこのクラス内だけからアクセスできることを示す
protected
- メソッドがサブクラスまたは同じパッケージのクラスからアクセスできることを示す
public
- メソッドがほかのクラスからアクセスできることを示す
static
- メソッドが「クラス変数」であることを示す
final
- サブクラスで再定義することができないメソッドであることを示す
native
- メソッドの実装がJava以外の言語(C, C++など)で行われることを示す
なし
- 同じパッケージのクラスだけからアクセスできることを示す
- ナイジェル ウォーレン, フィリップ ビショップ, Nigel Warren, Philip Bishop, 安藤 慶一
- Javaの格言―より良いオブジェクト設計のためのパターンと定石
- ピーター ハガー, Peter Haggar, ドキュメントシステム
- Javaの鉄則―エキスパートのプログラミングテクニック