回答

收藏

Java 8 中,怎么获取枚举成员上添加的注解?5金钱.anslist{background:url(

技术问答 技术问答 568 人阅读 | 0 人回复 | 2023-09-11

写一个简单的注解定义
) P+ L3 k0 Q+ Y$ |) [4 o
    5 P: i- W6 H, h9 ]7 a
  • @Target({ElementType.TYPE, ElementType.FIELD})
      d, b4 w" y- U/ Q( F. E7 h6 `: n
  • @Retention(RetentionPolicy.RUNTIME)
    2 G& V, @" g2 b/ _* b8 G) H
  • @Inherited. z' q) ], J4 f6 |) G
  • @Documented
    " j* V0 J' ]: o7 u6 E/ l' r
  • public @interface MyTest {
    . b- i- d/ S0 R% A! ]+ V
  •     Excel[] value();}/ p( Z8 [  j) {! e! O) L. N
然后在枚举成员变量上加上注解
    ; N! a2 J* S8 T8 I8 A
  • public enum UserAction {. T  w3 u* u% T) C7 l1 a/ u
  •     USER_ADD,4 q% O, u; [7 |2 L
  • + V9 I; H9 }' y6 N
  •     @MyTest
    / q3 A! L& ?6 C6 N* a
  •     USER_VIEW}+ X( S& I1 ?( i  d- {
我应该怎么写反射才能拿到这个注解,我测试了 UserAction.USER_VIEW.getClass().getAnnotation(MyTest.class),获取不到,我想实现添加注解后,过滤掉枚举成员。而且奇怪的是,我在UserAction类上加@MyTest注解,编译竟然不通过,我记得ElementType.TYPE之后,是可以给枚举类加注解的吧,求大佬路过解答一下

  h( `% q) H6 q, X我知道答案 回答被采纳将会获得5 金钱 已有0人回答
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则