首页 > 编程语言 > 详细

Java学习之注解Annotation

时间:2020-11-25 15:25:10      阅读:32      评论:0      收藏:0      [点我收藏+]

注解的定义:

Java 注解(Annotation)又称 Java 标注,是 JDK5.0 引入的一种注释机制,用来将任何的信息或元数据与程序元素(类、方法、成员变量等)进行关联。为程序的元素(类、方法、成员变量)加上更直观更明了的说明,这些说明信息是与程序的业务逻辑无关,并且供指定的工具或框架使用。Annotation像一种修饰符一样,应用于包、类型、构造方法、方法、成员变量、参数及本地变量的声明语句中。

元注解:

元注解是用于修饰注解的注解,通常用在注解的定义上。java.lang.annotation提供了四种元注解——@Retention、 @Target、@Inherited、@Documented。

  1. @Retention

    表示需要在什么级别保存该注释信息,用于描述注解的生命周期(即:被描述的注解在什么范围内有效)。参数是RetentionPolicy枚举对象, RetentionPolicy的枚举类型有:

    • RetentionPolicy.SOURCE —— 注解只保留在源文件中,即仅存在编译处理阶段,当java文件编译成class文件的时候,注解被废弃。
    • RetentionPolicy.CLASS —— 注解被保留到class文件,但jvm加载class文件时候被遗弃,这是默认的生命周期。
    • RetentionPolicy.RUNTIME —— 注解不仅被保存到class文件中,jvm加载class文件之后,仍然存在。因此可以使用反射机制读取该注解的信息。我们自定义的注解通常使用这种方式。
  2. @Target

    表示该注解用于什么地方。默认值为任何元素,表示该注解用于什么地方,参数是一个ElementType类型的数组。可用的ElementType参数类型有:

    • ElementType.TYPE —— 接口,类,枚举,注解
    • ElementType.FIELD —— 字段、枚举的常量
    • ElementType.METHOD —— 方法
    • ElementType.PARAMETER ——方法参数
    • ElementType.CONSTRUCTOR —— 构造函数
    • ElementType.LOCAL_VARIABLE —— 局部变量
    • ElementType.ANNOTATION_TYPE —— 注解
    • ElementType.PACKAGE —— 包
  3. @Inherited

    表明标记的注解是被继承的。比如,如果一个使用了@Inherited修饰的annotation类型被用于一个class,则这个annotation将被用于该class的子类。

  4. @Documented

    表明标记的注解可以被javadoc此类的工具文档化。

 

Java学习之注解Annotation

原文:https://www.cnblogs.com/rissa/p/13792702.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!