簡體   English   中英

@Deprecated 和 @Deprecated() 有什么區別?

[英]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 開始,它現在有兩個元素: sinceforRemoval 但是由於這些元素具有默認值,因此注釋仍然可以用作標記注釋。

它不是一個接口,它是一個注解 @Deprecated@Deprecated()是一樣的

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM