Javaでのabstractの使い方は何ですか?

Javaでは、abstractキーワードは抽象クラスや抽象メソッドを定義するために使用されます。

抽象クラスは、インスタンス化できないクラスを指し、継承のみが可能です。抽象クラスは通常、共通の特性や振る舞いを定義するために使用され、抽象メソッドを含むことができます。抽象メソッドは具体的な実装がないメソッドであり、メソッドの宣言のみがあり、具体的な実装はサブクラスで行います。抽象クラスには、他の非抽象メソッドや属性を含めることができます。

abstractキーワードを使用して、抽象クラスを定義します。

abstract class AbstractClass {
    // 抽象方法
    public abstract void abstractMethod();

    // 非抽象方法
    public void nonAbstractMethod() {
        // 具体实现
    }
}

抽象メソッドには具体的な実装が必要ありません。メソッドの宣言のみが含まれます。

abstract void abstractMethod();

抽象クラスはインスタンス化できず、継承して使用する必要があります。抽象クラスを継承する際は、すべての抽象メソッドを実装するか、子クラスも抽象クラスとして定義する必要があります。

抽象クラスと抽象メソッドを使用した例:

abstract class Animal {
    abstract void sound();
}

class Cat extends Animal {
    void sound() {
        System.out.println("Meow");
    }
}

class Dog extends Animal {
    void sound() {
        System.out.println("Woof");
    }
}

public class Main {
    public static void main(String[] args) {
        Animal cat = new Cat();
        Animal dog = new Dog();
        
        cat.sound(); // 输出 "Meow"
        dog.sound(); // 输出 "Woof"
    }
}
bannerAds