Deep Side of Java〜Java 言語再入門 第2回 〜 Java 文法を中心に

オブジェクト指向に関する仕様

クラス定義






オブジェクト指向に関する仕様

クラス定義

クラスの指定などは次のようにする。

クラス指定子* class クラス名 [extends 基底クラス名 ]
                          [ implements インターフェイス名 [, ...] ] {
        クラス本体
}

クラス指定子は4つあり、これらの順番は問われずに組み合わせて宣言する。

public
それが公開クラスであることを意味する。つまり、どんなパッケージからも呼び出すことができる。もし、public を指定しない場合には、同一パッケージからのみ呼び出すことができることになる。

final
そのクラスを継承したクラスを派生するのを禁止する。一般に final 修飾は最適化を向上させるが、そのかわり継承によるオブジェクト指向のメリットを失うことになるので、final 宣言の是非を検討した上で使われたい。

abstract
そのクラスは「不完全」であり、継承された実装クラスがインスタンス化されるべきであることを指定する。逆に言えば、abstract クラスはインスタンス化が禁止される。抽象基底クラスを明示するのに使う。

static
そのクラスがクラスの中で定義される「内部クラス」であることを示す。略しても問題はない。

(デフォルト)
そのクラスは package protected のスコープを持つ。



copyright by K.Sugiura, 1996-2006