访问枚举变量的私有成员?

时间:2013-03-24 05:03:11

标签: java variables enums

我正在寻找一个简单的Enum示例来尝试提升我的技能,我注意到至少为我带来了红旗,因为我不明白为什么允许这样做。

以下是我正在查看的枚举的副本:

public enum GameDuration {
    Short("30"), Medium("45"), Long("60");

    private GameDuration(String minutes) {
        this.minutes = minutes;
    }

    private String minutes;

    public String getMinutes() {
        return this.minutes;
    }

    public static GameDuration fromMinutes(String minutes) {
        if (minutes != null) {
            for (GameDuration g : GameDuration.values()) {
                if (minutes.equalsIgnoreCase(g.minutes)) {
                    return g;
                }
            }
        }
        return null;
    }
}

我不理解的部分是在 fromMinutes 方法中并粘贴在下面:

if (minutes.equalsIgnoreCase(g.minutes)) {

枚举中的分钟字段标记为私有,那么如何直接从变量g中访问它?

由于

1 个答案:

答案 0 :(得分:1)

方法fromMinutes(...)位于GameDuration类的内部,因此可以访问类的私有变量和方法。

相关问题