springboot注解-@interface 注解详解

时间:2022-10-12 21:30:00 类型:JAVA
字号:    

  @interface 用来定义一个自定义注解

  在Java中,定义注解其实和定义接口差不多,只需要在interface前添加一个@符号就可以,即

@interface Zhujie{ },

  这就表明我们定义了一个名为 @Zhujie 的注解。

  注解中的方法即为注解的元素,元素中不能包含参数,返回值只能为简单数据类型、String、Class、emnus、注释 和这些类型的数组

//自定义注解 @Zhujie ,该注解有两个元素 personId、company
public @interface Zhujie(){    
        int personId(); //元素1
    String company() default "[unassigned]"; //元素2
}

  注解定义完之后就可以使用了,注解是一种特殊的修饰符,在其他修饰符(例如,public、static 或者 final 等)使用地方都可以使用注解。

  按照惯例,注解应该放在其他修饰符的前面。注解的声明用@符号后面跟上这个注解类型的名字,再后面加上括号,括号中列出这个注释中元素的key-value对,其中,元素名为key ,值必须是常量。例如:

@Zhujie(personId=20151120,company="YeePay")

  如果注解中只有一个元素且元素名字为 value,那么在使用这个注解的时候,元素的名字和等号都可以省略,例如:

public @interface Zhujie(){
    String value();
}
//使用方式

@Zhujie(value="hello")
或
@Zhujie("hello")

  2.当我们使用@interface定义一个注解时,需要确定这个注解的生命周期和需要用到哪些地方。这就用到了注解的注解--元注解,其中@Retention 用来确定这个注解的生命周期;@Target 指定注解使用的目标范围(类、方法、字段等)


<