注解
描述:
1) 注解(Annotation)也被称为元数据(Metadata),用于修饰解释 包、类、方法、属性、构造器、局部变量等数据信息。
2) 和注释一样,注解不影响程序逻辑,但注解可以被编译或运行,相当于嵌入在代码中的补充信息。
3) 在 JavaSE 中,注解的使用目的比较简单,例如标记过时的功能,忽略警告等。在JavaEE 中注解占据了更重要的角色,例如用来配置应用程序的任何切面,代替 java EE 旧版中所遗留的繁冗代码和 XML 配置等。
三个基本的 Annotation:
1) @Override: 限定某个方法,是重写父类方法, 该注解只能用于方法
2) @Deprecated: 用于表示某个程序元素(类, 方法等)已过时
3) @SuppressWarnings: 抑制编译器警告
JDK 的元 Annotation(元注解):
描述:元 Annotation 用于修饰其他 Annotation
内容:
1) Retention //指定注解的作用时间,三种 SOURCE,CLASS,RUNTIME:
.SOURCE: 编译器使用后,直接丢弃这种策略的注释
.CLASS: 编译器将把注解记录在 class 文件中. 当运行Java程序时, JVM不会保留注解。这是默认值
.RUNTIME:编译器将把注解记录在class文件中.当运行Java程序时,JVM会保留注解.程序可以通过反射获取该注解
2) Target // 指定注解可以在哪些地方使用
3) Documented //指定该注解是否会在 javadoc 体现
(即生成文档时会看到该注解)
4) Inherited //子类会继承父类注解
(使用了该元注解的注解所在的类被继承时,子类自动拥有该注解)