2009-09-29 75 views
2

你好傢伙我不知道,如果標題描述enough.what我的意思是創建一個枚舉 像這樣如何使Java枚舉要素配置

public enum Test{ 
    ONE, TWO ,THREE 
} 

這看起來像硬coded.if一些因爲我需要添加四個某些業務規則的進化原因。我應該編碼並再次部署它嗎? 是不是讓它從文件中挑選元素,例如彈性配置或屬性文件的方法? 謝謝閱讀。

回答

5

如果枚舉值沒有明確的代碼存在,你怎麼用不完呢? Test.Four不會編譯。任何可能以某種方式引用Test.Four的代碼都是無效的,並且會崩潰,直到讀取文件並添加新值時爲止。

當然,您可以使用數組或值集合,並在運行時操作它們 - 從文件或數據庫或其他任何地方加載它們 - 但不是枚舉。

+0

感謝您的解釋 – 2009-09-29 17:16:15

1

您可以存儲在數據庫表中。

+0

thans for reply.i看到了一個使用hibernate的例子。一點都不壞,但對我的項目不好。 – 2009-09-29 16:51:49

3

我問了類似的問題here。內容可能是感興趣的。

共識似乎是Java的枚舉類型是靜態的設計。如果你需要一些可以在運行時改變的東西,最好使用不同的數據結構。

較少優選想法沿延伸枚舉的線等