[英]Can I use enums in Java to define what class to call/use? If so, how?
[英]How can I find out what enums are defined by a class?
我知道我可以通過以下方式獲得類的公共靜態成員:
obj.getClass().getFields()
但這並沒有讓我得到枚舉。 我希望能夠從getClass方法返回的Class對象中獲取它們。 有任何想法嗎?
(轉變為社區維基,因為它看起來有相當大的擴展空間,例如包括攻擊線的評論。我沒有意義只是在每個人都可以擴展它時轉錄評論。)
你的意思是嵌套在頂級類中的枚舉嗎? 如果是這樣,請使用Class.getDeclaredClasses()
並遍歷結果,查看是否有任何嵌套類是枚舉。 測試每個嵌套類的最簡單方法是使用Class.isEnum()
; 如果你想遍歷枚舉中的值,那么Class.getEnumConstants()
就是你要走的路。
obj.getClass()。getEnumConstants()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.