更新時(shí)間:2023-03-22 來(lái)源:黑馬程序員 瀏覽量:
在Java中,抽象類(lèi)不一定需要包含抽象方法,但是如果一個(gè)類(lèi)中包含有抽象方法,那么這個(gè)類(lèi)必須聲明為抽象類(lèi)。
下面是一個(gè)包含抽象方法的抽象類(lèi)的示例代碼:
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類(lèi)是一個(gè)抽象類(lèi),其中包含了一個(gè)抽象方法makeSound()。Cat和Dog類(lèi)都繼承了 Animal類(lèi),并實(shí)現(xiàn)了makeSound()方法。
需要注意的是,由于Animal類(lèi)是一個(gè)抽象類(lèi),因此不能直接創(chuàng)建它的對(duì)象。在main()方法中,我們使用了 Cat和Dog類(lèi)來(lái)創(chuàng)建了實(shí)例,并調(diào)用了它們的makeSound()方法來(lái)輸出它們各自的叫聲。