java 注解

1 篇文章 0 订阅

@Retention (保留期)

    RetentionPolicy.SOURCE      源码时保留

    RetentionPolicy.CLASS         编码时保留,不会进入JVM

    RetentionPolicy.RUNTIME    一直保留到JVM

 

@Documeted(文档注解)

    能够将注解中的元素包含到Javadoc中

 

@Target(目标)

    ElementType.ANNOTATION_TYPE   (作用在注解上的注解)

    ElementType.CONSTRUCTOR          (作用在构造函数上的注解)

    ElementType.FIELD                           (作用在属性上的注解)

    ElementType.LOCAL_VARIABLE        (作用在局部变量上的注解)

    ElementType.METHOD                     (作用在方法上的注解)

    ElementType.PACKAGE                     (作用在包上的注解)

    ElementType.PARAMETER                (作用在方法内参数上的注解)

    ElementType.TYPE                            (作用在类上的注解 (类,接口,枚举))

 

@Inherited (继承)

    被该注解注解过的类,其子类可以继承该父类的注解(前提:子类没有被任何注解应用)

 

@Repeatable (可重复)

    jdk1.8特性

    @Persons(Person[] persons)  @Person(被 @Repeatable 注解)

    则@ Person可以在一个方法上使用多次

 

@Deprecated(过期的元素或类)

 

判断通过反射判断它是否应用了某个注解:boolean isAnnotationPresent(Class<? extends Annotation> annotationClass);

获取某个注解:<A extends Annotation> A getAnnotation(Class<A> annotationClass);

获得应用在他身上的某些注解:Annotation[] getAnnotations();

 

如果一个注解要在运行时被成功提取,那么 @Retention(RetentionPolicy.RUNTIME) 是必须的。

来源自:https://blog.csdn.net/briblue/article/details/73824058

最后,希望本文对你有帮助,领个红包吧!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值