新しいクラスを定義する時に、そのすべてを最初から記述し直すとすると
大きな労力が必要になります。
Java言語も含む多くのオブジェクト指向の言語では、「クラスの継承」という
考え方を利用することで無駄を省くことができます。
次に具体的なプログラム内の記述法を見てみましょう。
クラス定義の始めのキーワード class とクラス名に続く部分で、
キーワード extendsを用いることで、クラスの継承を行うことを示します。
extends の後に、スーパークラスとして指定したいクラスの名前を指定します。
たとえば、Applet という既存のクラスを基にして、新しく NewApplet という
クラスを定義するには、次のようにします。
public class NewApplet extends Applet {
/* クラス定義の内容 */
}
参照するスーパークラスは、「クラスパス(Class Path)」によって指定される
ディレクトリに置かれたクラスライブラリの中に存在する必要があります。
クラスパスは環境変数によって設定が可能です。
デフォルトのクラスパスは、「カレントディレクトリ及び JDKの標準クラスライブラリ
が置かれたディレクトリ」です。
またクラスライブラリの内部がパッケージに階層化されている場合には、
パッケージ名を直接指定するか、または
パッケージの情報を import文によって与える必要があります。
import java.applet.Applet;
public class NewApplet extends Applet {
または
public class NewApplet extends java.applet.Applet {
実は Java言語では、すべてのクラス定義において継承が行われています。
extends によるスーパークラスの指定を省略した場合、
Object という名前のクラスがスーパークラスになります。
Object は Java言語のすべてのクラスの共通したスーパークラスです。