Java の抽象クラスの定義方法
抽象クラスとして定義するにはJavaでは「abstract」キーワードが必要。抽象クラスはインスタンス化できず、親クラスとしてのみ機能し、他クラスから継承される。
抽象クラスの定義方法は次のとおりです。
public abstract class AbstractClass {
// 抽象方法
public abstract void abstractMethod();
// 普通方法
public void commonMethod() {
// 方法体
}
}
抽象クラスには抽象メソッドと普通メソッドを含めることができます。抽象メソッドにはメソッド本体がなく、メソッド宣言のみを持ち、サブクラスは抽象メソッドを実装する必要があります。普通メソッドにはメソッド本体があり、サブクラスは直接継承して使用したり、上書きしたりすることができます。
御留意事項:
- 抽象クラスはインスタンス化できないため、他のクラスの親クラスとしてのみ使用できます。
- サブクラスが抽象クラスを継承する場合、サブクラスは、サブクラスが抽象クラスでない場合を除き抽象メソッドを実装する必要があります。
- 抽象クラスを継承したクラスが、継承元クラスの抽象メソッドを実装していない場合、そのクラスも抽象クラスと宣言する必要があります。
- クラスは抽象クラスを1つ継承できるが、インターフェースは複数実装できる。