注解的学习

注解

元注解

  • 元注解的作用就是负责注解其他注解,java定义了4个标准的meta-annotation类型,他们被用来提供对其他annotation类型作说明。

  • 这些类型和它们所支持的类在java.lang.annotation包中可以找到

    @Target,@Retention,@Documented,@Inherited

    • @Target:用于描述注解的适用范围(即:被描述的注解可以用在什么地方)
    • @Retention:表示需要在什么级别保存该注释信息,用于描述注解的生命周期
      • (SOURCE < CLASS < RUNTIME
      • (就是定义在SOURCE处,只有源码处有效,若定义在RUNTIME处,则包含前2者且在运行时有效)
    • @Documented:说明该注解将被包含在javadoc中
    • @Inherited:说明子类可以继承父类中的该注解

自定义注解

  • 使用@interface自定义注解时,自动挤成了java.lang.annotation.Annotation接口

  • 分析

    • @interface用来声明一个注解,格式:public @interface 注解名
    • 其中的每一个方法实际上是声明了一个配置参数
    • 方法的名称就是参数的名称( **注解的参数:参数类型 + 参数名(); ** )
    • 返回值类型就是参数的类型(返回值只能是基本类型,Class,String,enum)
    • 可以通过default来声明参数的默认值( 如果默认值为-1,代表不存在。
    • 如果只有一个参数成员,一般参数名为value(只有默认值是value才能省略)
    • 注解元素必须要有值,我们定义注解元素时,经常使用空字符串,0作为默认值
posted @ 2021-09-24 21:09  SuperJH  阅读(32)  评论(0)    收藏  举报