0
我正在看一個簡單的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)) {
分鐘enum中的字段被標記爲私有的,那麼如何直接從變量g中訪問?
感謝
哦,我沒有注意到......對不起,這很晚了。 :)即使它是靜態的? – 2013-03-24 05:05:11
@JanTacci:即使它是靜態的(因爲你的編譯器已經告訴你了)。 – 2013-03-24 05:05:40
K明白了,我應該早點注意到:) – 2013-03-24 05:07:36