[英]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.