小编Jor*_*dan的帖子

如何处理Java中的通用枚举?

所以,我有一个抽象类,如:

public abstract class AbstractParent <E extends Enum<E>> {...}
Run Code Online (Sandbox Code Playgroud)

在AbstractParent里面的非抽象方法的某处,我想迭代E的值.这可能吗?

更好的例子:

public abstract class AbstractParent <E extends Enum<E>> {
    ...
    protected void doSomething() {
        //iterate over the values of E and perform an action using them
    }
}

public class Child extends AbstractParent<Child.Index> {
    public static enum Index {
        ...
    }
    public Child() {
        super();
        this.doSomething(); //this should iterate over Index's values
    }
}
Run Code Online (Sandbox Code Playgroud)

编辑:

所以,感谢mdma,这非常有效:

public abstract class AbstractParent <E extends Enum<E>> {
    ...
    protected void doSomething() {
        //iterate …
Run Code Online (Sandbox Code Playgroud)

java generics enums

2
推荐指数
1
解决办法
428
查看次数

标签 统计

enums ×1

generics ×1

java ×1