我有一个关于空EnumSets的问题。我尝试了.noneOf()方法,但我总是得到“java.lang.ExceptionInInitializerError”错误

时间:2018-02-16 11:01:44

标签: enums enumset

这是我班级的早期构建:

public class Player {
    public enum Tech {
        NONE(EnumSet.noneOf(Tech.class)),
        VEGETATION(EnumSet.of(NONE)),
        LIVESTOCK(EnumSet.of(NONE)),
        STRAWBERRIES(EnumSet.of(VEGETATION)),
        BIODOME(EnumSet.of(STRAWBERRIES)),
        BIOMASS(EnumSet.of(VEGETATION, LIVESTOCK));

        private final Set<Tech> prerequisites;

        Tech(Set<Tech> prerequisites) {
            this.prerequisites = prerequisites;
        }
    }
    private Set<Tech> techsKnown;

    public Player() {
        techsKnown = EnumSet.of(Tech.NONE);
    }
}

我希望NONE有一个空集。什么是最好的方式?

0 个答案:

没有答案