在 Java 中,枚举类也可以包含抽象方法。这意味着枚举可以有不同的实现,类似于普通的类和接口。当枚举类包含抽象方法时,每个枚举常量都必须提供该抽象方法的实现。
以下是一个简单的示例,演示了一个带有抽象方法的枚举类:
package com.hxstrive.demo;
/**
* 验证枚举类中定义抽象方法
* @author hxstrive.com
*/
public class EnumAbstractMethod {
public static void main(String[] args) {
System.out.println(Car.POLICE_CAR.print());
System.out.println(Car.BUS.print());
}
enum Car {
// 枚举常量
BUS {
// 抽象方法实现
@Override
public String print() {
return "一辆公交车";
}
},
POLICE_CAR {
// 抽象方法实现
@Override
public String print() {
return "一辆警车";
}
};
// 抽象方法
public abstract String print();
}
}运行示例,输出如下:
一辆警车 一辆公交车
通过这种方式,枚举类可以具有更灵活的行为,每个枚举常量可以根据自身的特性提供不同的实现,这种方法也使得枚举类能够更好地模拟具有不同行为的实例。