枚举类型作为注释参数?

时间:2020-07-08 22:30:52

标签: java class types enums annotations

如何使我的框架MyAnnotation具有用户定义的枚举类型作为参数?

类似于@MyAnnotation(Colors.BLUE)。另一个想法较少的解决方案是@MyAnnotation(Colors.BLUE.getName())

编辑:该枚举是用户指定的。我尝试了Enum<?> value(),但没有成功

1 个答案:

答案 0 :(得分:0)

在为相关类型定义注释时,可以显式提供enum元素。

enum MyEnum {
    MY_ELEMENT
}
@interface MyAnnotation {

    MyEnum value();

}
@MyAnnotation(value = MyEnum.MY_ELEMENT)
class MyClass {
    
}