2014-09-19 18 views
1

我有一個枚舉。使用元編程更新groovy中的枚舉

enum Status {A,B,C} 

是否可以使用元編程添加另一個狀態?

+0

我懷疑這是可能的。你打算如何使用它?可能有另一種解決方案。 – Will 2014-09-19 14:22:03

+0

enum來自外部jar文件,我需要爲了測試目的而改變它 – 2014-09-19 14:41:31

回答

3

Java枚舉是一個syntactic sugar over some boilerplate code,具有靜態屬性和一些輔助方法(如values())。枚舉具有私有構造函數,Groovy不允許在枚舉上調用new。所以它變得有點hacky試圖解決這個問題。

2

不,你有enum(它總是一組固定的選擇),或者你有一組動態的選擇(它不是enum)。使用Set代替。