マンガで分かる Java入門講座

第9章 クラスとオブジェクト2
9-8. 継承5 抽象クラス

クラスのメソッドの一部が未実装の「抽象クラス」について紹介します。

● 抽象クラスと抽象メソッド

 Javaには「抽象クラス」と呼ばれる特殊なクラスがあります。抽象クラスは、不完全なクラスです。抽象クラスには「抽象メソッド」と呼ばれる、中身が未実装のメソッドが含まれています。また、抽象クラスには、抽象メソッド以外にも、完全なメソッドやフィールドを含めることが可能です。

 抽象クラスは、そのままではプログラム中では使えません。抽象クラスは、継承して抽象メソッドを全て実装すると、初めて使えるクラスになります。またこの時、全ての抽象メソッドが実装されなかった場合は、さらにそのサブクラスで抽象メソッドを実装することになります。


● 抽象クラスの実例

 抽象クラスには、クラスの頭に「abstract」が付きます。また、抽象メソッドも、メソッドの頭に「abstract」が付きます。

 抽象クラスを継承したクラスでは、抽象メソッドが実装された場合は、abstractを取り除きます。また、全ての抽象メソッドがなくなったら、クラスのabstractを取り除きます。これでクラスが完成します。

 以下、抽象クラスの実例を示します。

ソースコード)抽象クラス
package sample;

abstract public class SuperClass {
    public int n = 1;

    abstract public int getN2();

    public int getN() {
        return n;
    }
}

ソースコード)抽象クラスを継承して完全なクラスにした例
package sample;

public class SubClass extends SuperClass {
    @Override
    public int getN2() {
        return n * 2;
    }
}

この講座のマンガ部分は「箱人形マンガ(Box Comic) 」で作成しています。
作成:2013/06/04  更新:2015/08/09  [Permalink]