Annotation的中文就是注解的意思,是一种对MetaData(元数据)的支持,作用是在源文件嵌入一些补充信息。
1、@override限定重写父类方法,可以防止方法名称写错;
2、@DePRecated标记已过时;
3、@SuppressWarnings抑制编译器警告;
4、@SafeVarargs堆污染,把一个不带泛型的对象赋给一个带泛型的变量,可能发生堆污染;
5、@Functionallnterface java8的函数式接
1、@Retention 指定被修饰的Annotation可以保留多长时间;
2、@Target 指定被修饰的Annotation能修饰哪些程序单元;
3、@Documented 指定被修饰的Annotation将被javadoc工具提取成文档;
4、@Inherited指定被修饰的Annotation将具有继承性。
1、如何定义
public @interface Test {} 有点像定义接口2、如何使用
/** * 可以修饰任何元素,包括类、接口、方法 */@Testpublic class MyClass { @Test public void info(){ }}3、提取Annotation信息
通过反射的方法提取并处理Annotation信息
4、通过APT在编译时处理Annotation
五、java8新增
1、重复注解2、Type Annotation六、一些实例
新闻热点
疑难解答