批处理注释bat注释一行
在Java中,大多数情况下,批注和批注处理器都被一团谜团包围。 他们似乎是为“专家”保留的主题。最重要的是,我认为他们周围还存在一些FUD 。该职位旨在以尽可能中立的方式深入探讨该主题。这样,每个人都可以做出明智的决定基于事实,而不是聆听充满误解或隐藏议程的人们。
自Java版本5(代号为Tiger)于2004年发布以来,便可以使用注释。
在Java计算机编程语言中,注释是一种语法元数据,可以添加到Java源代码中。 类,方法,变量,参数和Java包可能会带有注释。
https://zh.wikipedia.org/wiki/Java_annotation
最简单的注释如下所示:
@MyAnnotationpublicclassFoo{}
由于缺少注释,以前的Java版本必须以倾斜的方式使用某些功能。
-
更换
标记器接口
-
自Java诞生以来,就需要标记一个类或类的层次结构。 在Java 5之前,这是通过没有方法的接口完成的。
Serializable
和可Cloneable
是此类接口的两个示例。这种接口显然不同于其他接口:它们在自己和实现类之间未定义任何协定。 因此,他们赢得了标记器接口的名称。
Java新手通常会问与该方法有关的问题。 这样做的原因是因为这是一个把戏。 注释消除了对该技巧的需要,并保留了接口的协定角色。
publicclassFooimplementsMarkerInterface{} (1) @MyAnnotation publicclassFoo{} (2)
- 标记界面
- 等同于标记界面的注释
更好的元数据管理
-
弃用是将API标记为过时的过程。 这样,用户可以获知有关更改的信息,可以决定停止使用该API,并且可以在以后的版本中以较小的影响删除该API。 在Java 5之前,JavaDoc中设置了弃用:
/** * Blah blah JavaDoc. * * @deprecated As of JDK version 1.1, */ publicclassDeprecatedApi{}
显然,这是一种非常脆弱的方法:唯一利用它的方法是通过
javadoc
工具。 标准JavaDocs 专门讨论了这些不推荐使用的API 。 或者,可以通过自定义doclet配置javadoc
工具,以以任何所需方式处理Javadoc元数据(包括但不限于@deprecated
)。在Java 5中,已弃用使用提供的
@Deprecated
批注进行标记:/** * Blah blah JavaDoc. */ @Deprecated publicclassDeprecatedApi{}
旧的不推荐使用的API保留了旧的方法,因此它们同时使用元数据和注释。
此外,由于Java 9,
@Deprecated
允许两个元素:可选元素 修饰符和类型 描述 forRemoval
boolean
Indicates whether the annotated element is subject to removal in a future version.
since
String
Returns the version in which the annotated element became deprecated.