注解是对程序进行标注和解释

public @interface 注解名称{
public 属性类型 属性名 () default 默认值;
}
其中public,default 默认值都可以省去。
(注:若注解里没有指定默认值,在使用注解时,就要手动给出注解属性的设置值)
- public @interface annotationDemo_01 {
- //定义一个基本类型的属性
- int a () default 23;
- //定义一个String类型的属性
- public String name();
- //定义一个Class类型的属性
- public Class clazz() default annotationDemo_02.class;
- //定义一个注解类型的属性
- public annotationDemo_02 anno() default @annotationDemo_02;
- //定义一个枚举类型的属性
- public Season season() default Season.SPRING;
-
-
- //一维数组:
- //int数组
- public int [] arr() default {1,2,3,4,5,6};
- //枚举数组
- public Season[] seasons() default {Season.SPRING,Season.SUMMER};
- }
- //在使用注解时,注解里若没有指定默认值,就要手动给出注解属性的设置值
- @annotationDemo_01(name="张三")
- public class annotationDemo_03 {
- }
如果只需要给注解的value属性赋值,可以不写value=“”,直接赋值
- //如果只需要给注解的value属性赋值,可以不写value,直接赋值,不用写value="001"
- @annotationDemo_01("001")
- public class annotationDemo_03 {
- }
元注解就是注解的注解
