java中annotation

什么是annotation(注解)?

  java.lang.annotation,接口Annotation。对于Annotation,是Java5的新特性,JDK5引入了Metadata(元数据)很容易的就能够调用Annotations。Annotations提供一些本来不属于程序的数据,比如:一段代码的作者或者告诉编译器禁止一些特殊的错误。Anannotation对代码的执行没有什么影响。Annotations使用@annotation的形式应用于代码:类(class),属性(attribute),方法(method)等等。一个Annotation出现在上面提到的开始位置,而且一般只有一行,也可以包含有任意的参数。

  Java平台具有各种ad-hoc注释机制 - 例如,transient修饰符或@deprecated javadoc标记。JSR-175 在2002年向Java Community Process引入了通用注释(也称为元数据)工具; 它在2004年9月获得了批准。[4] 从JDK版本1.5开始,语言本身就可以获得注释。所述易于工具提供了用于在JDK 1.5版编译时的注释处理临时接口; JSR-269对此进行了形式化,并在1.6版本中集成到javac编译器中。 

内置注释

Java定义了一组内置于该语言中的注释。在七个标准注释中,三个是java.lang的一部分,其余四个是从java.lang.annotation导入的。[5][6]

应用于Java代码的注释:

  • @Override - 检查方法是否为覆盖。如果在其中一个父类或已实现的接口中找不到该方法,则会导致编译错误。
  • @Deprecated - 将方法标记为过时。如果使用该方法,则会发出编译警告。
  • @SuppressWarnings - 指示编译器禁止在注释参数中指定的编译时警告。

应用于其他注释的注释(也称为“Meta Annotations”):

  • @Retention - 指定标记注释的存储方式 - 无论是仅代码,编译到类中,还是通过反射在运行时可用。
  • @Documented - 标记另一个注释以包含在文档中。
  • @Target - 标记另一个注释以限制可以应用注释的Java元素类型。
  • @Inherited - 标记要继承到带注释类的子类的另一个注释(默认情况下,注释不会继承到子类)。

从Java 7开始,该语言增加了三个附加注释。

  • @SafeVarargs - 自Java 7以来,使用泛型varargs参数抑制方法或构造函数的所有调用者的警告。
  • @FunctionalInterface - 指定类型声明旨在成为Java 8以来的功能接口
  • @Repeatable - 指定自Java 8以来,注释可以多次应用于同一声明。
上一篇:教你轻轻松松入门PHP


下一篇:牛客网——剑指offer(跳台阶以及变态跳台阶_java实现)