首頁常見問題正文

java中抽象類必須要有抽象方法嗎?

更新時(shí)間:2023-03-22 來源:黑馬程序員 瀏覽量:

IT培訓(xùn)班

  在Java中,抽象類不一定需要包含抽象方法,但是如果一個(gè)類中包含有抽象方法,那么這個(gè)類必須聲明為抽象類。

  下面是一個(gè)包含抽象方法的抽象類的示例代碼:

abstract class Animal {
    abstract void makeSound();
}

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

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

public class Main {
    public static void main(String[] args) {
        Animal cat = new Cat();
        Animal dog = new Dog();

        cat.makeSound();
        dog.makeSound();
    }
}

  在上面的代碼中,Animal類是一個(gè)抽象類,其中包含了一個(gè)抽象方法makeSound()。Cat和Dog類都繼承了 Animal類,并實(shí)現(xiàn)了makeSound()方法。

  需要注意的是,由于Animal類是一個(gè)抽象類,因此不能直接創(chuàng)建它的對象。在main()方法中,我們使用了 Cat和Dog類來創(chuàng)建了實(shí)例,并調(diào)用了它們的makeSound()方法來輸出它們各自的叫聲。

分享到:
在線咨詢 我要報(bào)名
和我們在線交談!