簡(jiǎn)介: 是什么, 用途, 為什么有用

Annotation 是一種元數(shù)據(jù)(metadata),它本身不是代碼,但提供了一些關(guān)于代碼的數(shù)據(jù)。這些數(shù)據(jù)可以是限定代碼的一些功能,也可以是增加一些功能。可以將它理解為代碼的修飾符,將代碼當(dāng)作一個(gè)名詞,則Annotation是一個(gè)形容詞,它使這個(gè)名詞更加準(zhǔn)確、或限定為更小的范圍。如紅紅的蘋果,直接說(shuō)蘋果也行,但有了紅紅的這個(gè)形容詞,就更加準(zhǔn)確了。 Annotation可以向編譯器提供一些信息,如檢測(cè)錯(cuò)誤(@Override)、消除編譯告警(@SuppressWarning)。 編譯期生成代碼(@Junit)。運(yùn)行期提供一些檢查機(jī)制(@NonNull)。被框架廣泛使用。 和comment一樣,annotation也能夠起到描述代碼功能。但它還具有檢查機(jī)制。 為什么是需要的?有些信息無(wú)法通過(guò)代碼表達(dá)出來(lái),此時(shí)通過(guò)Annotation可以很好的達(dá)到。

使用: 一個(gè)簡(jiǎn)單例子,如@Override。系統(tǒng)提供的annotation,做成列表

Java 預(yù)定義的annotation

namedescription
@Deprecated被修飾的元素已經(jīng)被棄用,不應(yīng)該再使用。編譯器會(huì)打印一個(gè)告警,如果這個(gè)元素還被使用
@Override被修飾元素會(huì)覆蓋基類的定義。
@SuppressWarnings消除一個(gè)編譯告警。接受一個(gè)參數(shù)
@SafeVarargs指明方法不會(huì)對(duì)varargs做不安全的操作。unchecked 告警會(huì)被抑制

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式

我想了解如何學(xué)習(xí)

姓名:
手機(jī):
留言:
 
  • <sub id="nxwj7"></sub>