在 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(); } }
运行示例,输出如下:
一辆警车 一辆公交车
通过这种方式,枚举类可以具有更灵活的行为,每个枚举常量可以根据自身的特性提供不同的实现,这种方法也使得枚举类能够更好地模拟具有不同行为的实例。