Javaの抽象キーワードの使い方


  1. 抽象クラスの定義: 抽象クラスは、具象クラス(通常のクラス)とは異なり、インスタンス化できません。抽象クラスを定義するには、クラス宣言の前に「abstract」キーワードを付けます。例えば、以下のような抽象クラスを定義することができます。
abstract class Animal {
    public abstract void makeSound();
}
  1. 抽象メソッドの定義: 抽象メソッドは、メソッドの本体が存在せず、サブクラスでオーバーライドする必要があります。抽象メソッドを定義するには、メソッド宣言の前に「abstract」キーワードを付けます。例えば、上記の抽象クラスで定義したmakeSoundメソッドは、以下のようにサブクラスでオーバーライドします。
class Dog extends Animal {
    public void makeSound() {
        System.out.println("ワンワン!");
    }
}
  1. 抽象クラスの継承: 抽象クラスは、通常のクラスと同様に継承することができます。ただし、抽象クラスを継承する場合、サブクラスで抽象メソッドを実装する必要があります。例えば、以下のようなサブクラスを定義することができます。
class Cat extends Animal {
    public void makeSound() {
        System.out.println("ニャー!");
    }
}
  1. 抽象クラスの利用: 抽象クラスは直接インスタンス化できないため、サブクラスを通じて利用します。例えば、以下のように抽象クラスを使用することができます。
public class Main {
    public static void main(String[] args) {
        Animal dog = new Dog();
        Animal cat = new Cat();
        dog.makeSound(); // ワンワン!
        cat.makeSound(); // ニャー!
    }
}

以上がJavaの抽象キーワードの使い方とコード例です。抽象クラスと抽象メソッドを使用することで、柔軟なオブジェクト指向プログラミングが可能になります。