我有这样声明的这两个枚举:
public enum EnumOne implements EnumInterface {
SomethingHere,
SomethingThere;
public void someMethod () { }
}
public enum EnumTwo implements EnumInterface {
SomethingOverYonder;
public void someMethod () { }
}
如此处所示,它们都实现了这个接口。
public Interface EnumInterface {
someMethod();
}
我在这里定义了一个类,它包含一个 EnumSet,它将从 Enum1 或 Enum2 中获取所有元素。这将通过一个将索引作为参数的方法来定义。像这样的东西:
public class SomeClass {
private EnumSet someEnum;
public void setEnumType (int index) {
switch (index) {
case 1:
someEnum = EnumSet.allOf(EnumOne.class);
break;
case 2:
someEnum = EnumTwo.allOf(EnumTwo.class);
break;
}
}
}
现在,我知道我必须以某种方式使用泛型来完成此操作,但我不知道该怎么做,因为我对它不够熟悉,我希望你能启发我一点。
提前感谢您的回答。