Java中的枚举值实现多态主要是通过接口来实现。可以在枚举类中定义一个接口,并让每个枚举值实现该接口。然后在需要使用多态的地方,使用接口类型来引用枚举值。
示例代码如下:
// 定义一个接口
interface Animal {
void sound();
}
// 定义一个枚举类
enum AnimalType implements Animal {
DOG {
@Override
public void sound() {
System.out.println("Wang Wang");
}
},
CAT {
@Override
public void sound() {
System.out.println("Miao Miao");
}
}
}
public class Main {
public static void main(String[] args) {
AnimalType animal1 = AnimalType.DOG;
AnimalType animal2 = AnimalType.CAT;
animal1.sound(); // 输出:Wang Wang
animal2.sound(); // 输出:Miao Miao
}
}
在上面的示例中,枚举类AnimalType实现了Animal接口,并且每个枚举值都实现了接口中的方法sound。在main方法中,通过接口类型Animal来引用不同的枚举值,实现了多态的效果。