自定義註解及其解析

  1. 怎樣去編寫一個自定義的註解
  2. 怎樣去使用註解
  3. 怎樣去解析註解-----使用反射知識

1.編寫一個註解

(1)關鍵字:@interface  在interface前加個@就行了

(2)註解的屬性: ------->   語法:類型 名稱();如String value()

注意:如果屬性的名字是value,並且註解的屬性值有一個 那麼在使用註解時可以省略value

(3)加2個元註解,@Retention 註解可見範圍,  @Target 註解使用範圍,詳細下文

註解屬性類型只能是以下幾種

基本類型

                 2.String

                 3.枚舉類型

                 4.註解類型

                 5.Class類型

                 6.以上類型的一維數組類型

如何選擇元註解

介入一個概念:元註解:代表修飾註解的註解,作用:限制定義的註解的特性

@Retention    默認SOURCE

SOURCE: 註解在源碼級別可見

CLASS:註解在字節碼文件級別可見

RUNTIME:註解在整個運行階段都可見

@Target   默認所有類型

代表註解修飾的範圍:類上使用,方法上使用,字段上使用

FIELD:字段上可用此註解

METHOD:方法上可以用此註解

TYPE:/接口上可以使用此註解

注意:要想解析使用了註解的類 , 那麼該註解的Retention必須設置成Runtime

2.使用註解

在類/方法/字段 上面是@XXX

3.解析註解

關於註解解析的實質:從註解中解析出屬性值

字節碼對象存在於獲得註解相關的方法

isAnnotationPresent(Class<? extends Annotation> annotationClass) 判斷該字節碼對象身上是否使用該註解了

getAnnotation(Class<A> annotationClass) :獲得該字節碼對象身上的註解對象

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章