注解为程序提供信息,但不是程序本身的组成部分。注解有以下用途:
* 为编译器提供信息,相当于C语言中的预编译指令
* 部署时处理,软件工具可以根据注解来生成代码,XML文件等,例如编写servlet,无需更改web.xml,只需要使用注解。
* 运行时处理,有些注解可以在运行时检查。
示例:@SuppressWarnings(value="unchecked")
如果只有一个元素且其名称为value,可以省略该名称,直接写值
示例:@SuppressWarnings("unchecked")
如果没有元素,可以省略小括号
示例:@Override
定义注解类型
@interface ClassPreamble { String author(); String date(); int currentRevision() default 1; String lastModified() default "2014-3-32"; String[] reviewers(); } @ClassPreamble(author="weidiao",date="2014-3-23", reviewers = {""}) class Weidiao{ }
编译器使用的注解有三种:@Deprecated,@Override,@SuppressWarnings