java 注解筆記

@Target:表示注解可以用在什么地方,由ElementType枚舉定義

參數(shù) 含義
CONSTRUCTOR 構(gòu)造器
field 域聲明(包括enum實(shí)例)
local_variable 局部變量聲明
method 方法參數(shù)
package 包聲明
parameter 參數(shù)聲明
type 類,接口或enum
annotation_type 應(yīng)用于另一個(gè)注解
type_parameter 類型參數(shù)聲明(1.8新加入)
type_use 類型使用聲明(1.8加入)

@Retention表示需要在什么級(jí)別保存該注解信息

參數(shù) 含義
source 注解將被編譯器丟棄(只會(huì)保留在源碼里)
class 注解在class文件中可用,但是會(huì)被vm丟棄
runtime vm將在運(yùn)行期間也保存注解,可用通過(guò)反射獲取注解的信息

apt在編譯時(shí)自動(dòng)查找所有繼承自AbstractProcessor的類,然后調(diào)用他們的process方法去處理

@Documented表示注解會(huì)被包含在javaapi文檔里
@Inherited允許子類繼承父類注解

注解元素

注解可用的類型有:
1.所有的基本類型(int,float,boolean,byte,double,char,long,short)
2.string
3.Class
4.enum
5.Annotation
元素的修飾符只能是public或者default

獲取注解

1.類注解使用getAnnotation方法
2.方法注解Method.getAnnotation()
3.參數(shù)注解Method.getParameterAnnotations();返回二維數(shù)組
4.變量注解Field.getAnnotation()

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 注解 創(chuàng)建注解 下面代碼創(chuàng)建了一個(gè)名為MyAnno的注解,有兩個(gè)成員str和val。@Retention(…)注解...
    kylinxiang閱讀 4,088評(píng)論 0 2
  • 1:為什么要學(xué)習(xí)注解?學(xué)習(xí)注解有什么好處?學(xué)完能做什么? 1、能夠讀懂別人寫的代碼,特別是框架相關(guān)的代碼 2、讓編...
    小菜_charry閱讀 290評(píng)論 0 0
  • 本文章涉及代碼已放到github上annotation-study 1.Annotation為何而來(lái) What:A...
    zlcook閱讀 29,755評(píng)論 15 116
  • Java注解詳解 Java注解是JDK1.5以后添加的特性,自定義注解需要聲明為@interface。 最簡(jiǎn)單的注...
    hbh404閱讀 183評(píng)論 0 0
  • 這幅作品是臨摹華珠老師的,所以內(nèi)容和色彩完全按照老師的原圖完成。選擇這一副圖的原因有三個(gè)。一、我對(duì)時(shí)間管理比較感興...
    顏麟鰻閱讀 875評(píng)論 0 0

友情鏈接更多精彩內(nèi)容