簡體   English   中英

訪問枚舉變量的私有成員?

[英]Accessing Private Members Of Enum Variable?

我在看一個簡單的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中訪問它呢?

謝謝

fromMinutes(...)方法位於GameDuration類的內部,因此可以訪問該類的私有變量和方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM