java 抽象方法例子
时间: 2023-09-03 09:02:05 浏览: 51
抽象方法是指在Java中只有方法声明而没有方法实现的方法。它们只有方法的签名,没有方法的具体实现。抽象方法必须定义在抽象类或接口中,它们不能被直接调用,必须由子类实现或实现接口来提供具体的方法实现。
举个例子来说,假设我们有一个抽象类动物类Animal,其中包含一个名为"sound"的抽象方法,该方法用来表示动物发出的声音。而具体的动物类,例如猫类Cat和狗类Dog都是Animal类的子类,它们需要实现抽象方法sound()来描述猫和狗叫的声音。
```
// 定义抽象类Animal
abstract class Animal {
public abstract void sound(); // 抽象方法
}
// 定义具体动物类Cat
class Cat extends Animal {
public void sound() { // 实现抽象方法
System.out.println("喵喵喵");
}
}
// 定义具体动物类Dog
class Dog extends Animal {
public void sound() { // 实现抽象方法
System.out.println("汪汪汪");
}
}
// 测试
public class Main {
public static void main(String[] args) {
Animal cat = new Cat(); // 创建Cat对象
cat.sound(); // 调用抽象方法sound()
Animal dog = new Dog(); // 创建Dog对象
dog.sound(); // 调用抽象方法sound()
}
}
```
在这个例子中,Animal类是一个抽象类,其中定义了一个抽象方法sound()。Cat和Dog类分别是Animal类的子类,并实现了sound()方法来表示猫和狗叫的声音。在测试代码中,我们创建了Cat和Dog的对象,通过调用sound()方法来输出它们的叫声。这样我们可以看到,抽象方法的定义允许我们在抽象类中声明方法的协议,具体的子类必须实现这些方法来提供自己的功能。