自定义注解入门:
public @interface Annotation01 {
//set default value "";
String value() default ""; }
1.保持策略
@Retention annotation: 告知编译器如何去运行,default is RetentionPolicy.CLASS
(1).RetentionPolicy.CLASS : --》会将注解保存在class 文件中,但运行时候不会被virtual machine 执行
(2).RetentionPolicy.SOURCE;--》会被编译器抛弃掉,只会存在原文件当中
(3).RetentionPolicy.RUNTIME;---》注解会保存在class file 中,运行时候会被virtual machine 保存,可以被反射读取
2.使用时机
@Target annotation :用来定义注解使用的时机,定义在类上?方法上?成员变量上?