我有2个或更多枚举,每个枚举使用相同的方法。我需要使用所有这些枚举来验证另一个类中的消息。每个枚举都有相同的方法。我理解如何将枚举作为通用参数传递,但我不相信可以在接收枚举作为通用枚举的方法中调用该枚举方法。
答案 0 :(得分:1)
就像其他类一样,enum
可以实现接口。
interface CanThing {
void doThing();
}
enum Validate implements CanThing {
ONE_THING {
@Override
public void doThing() {
System.out.println("One thing");
}
},
OTHER_THING;
// Default.
@Override
public void doThing() {
System.out.println("No thing");
}
}
public void doAThing(CanThing thing) {
thing.doThing();
}
public void test(String[] args) {
for (CanThing t: Validate.values()) {
doAThing(t);
}
}