[英]What is the difference between @Deprecated vs @Deprecated()?
今天遇到了这个@Deprecated()
。 @Deprecated
知道@Deprecated
与@Deprecated()
但两者都解析为编译器Deprecated
的相同接口。
它们是不同的还是相同的? 是否有一些练习可以使用一种方法?
他们俩的意思是一样的。 @Deprecated
只是@Deprecated()
简写。 见第9.7.2 节。 Java 语言规范的标记注解:
标记注释是设计用于标记注释类型(第 9.6.1 节)的速记。
MarkerAnnotation: @ TypeName
它是普通注释的简写:
@TypeName()
对带有元素的注释类型使用标记注释是合法的,只要所有元素都有默认值(第 9.6.2 节)。
例 9.7.2-1。 标记注释
以下是使用 §9.6.1 中的
Preliminary
标记注释类型的示例:@Preliminary public class TimeTravel { ... }
从 Java 8 开始, @Deprecated
注释没有元素,因此它只能是标记注释。 但是,从 Java 9 开始,它现在有两个元素: since
和forRemoval
。 但是由于这些元素具有默认值,因此注释仍然可以用作标记注释。
它不是一个接口,它是一个注解。 @Deprecated
和@Deprecated()
是一样的
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.