看到了一篇非常好的博客,简要的记录一些重点吧。
注解类似于标签,给注解的那些类,方法等贴上一些标签,这些信息并不是Java程序的一部分,
注解的信息可以可以通过反射读取,然后由开发提供的工具来处理这些信息实现某些功能。
- 定义: @interface
public @interface TestAnnotation {
}
- 应用:
创建一个类 Test,然后在类定义的地方加上 @TestAnnotation 就可以用 TestAnnotation 注解这个类了。
你可以简单理解为将 TestAnnotation 这张标签贴到 Test 这个类上面。
@TestAnnotation
public class Test {
}
元注解
可以注解到注解上的注解。@Retention、@Documented、@Target、@Inherited、@Repeatable
@Retention (保留期)
取值:
- RetentionPolicy.SOURCE 注解只在源码阶段保留,在编译器进行编译时它将被丢弃忽视。
- RetentionPolicy.CLASS 注解只被保留到编译进行的时候,它并不会被加载到 JVM 中。
- RetentionPolicy.RUNTIME 注解可以保留到程序运行的时候,