閱讀714 返回首頁    go 阿裏雲 go 技術社區[雲棲]


java中的元注解

 

一、元注解的概念

java中有4個元注解:@Retention、@Target、@Document、@Inherited。所謂元注解就是注解的注解。

 

 

二、注解介紹

 

①@Retention

@Retention——注解的保留位置

 

注解僅存在於源碼中,在class字節碼文件中不包含
@Retention(RetentionPolicy.SOURCE)

 

默認的保留策略,注解會在class字節碼文件中存在,但運行時無法獲得
@Retention(RetentionPolicy.CLASS)

 

注解會在class字節碼文件中存在,在運行時可以通過反射獲取到
@Retention(RetentionPolicy.RUNTIME)

 

②@Target

@Target——注解的作用目標

 

接口、類、枚舉、注解
@Target(ElementType.TYPE)

 

字段、枚舉的常量
@Target(ElementType.FIELD)

 

方法
@Target(ElementType.METHOD)

 

方法參數
@Target(ElementType.PARAMETER)

 

構造函數
@Target(ElementType.CONSTRUCTOR)

 

局部變量
@Target(ElementType.LOCAL_VARIABLE)

 

注解
@Target(ElementType.ANNOTATION_TYPE)

 


@Target(ElementType.PACKAGE)


③@Document——說明該注解將被包含在javadoc中


④@Inherited——說明子類可以繼承父類中的該注解

 

 

三、例子

@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD})
public @interface AnnatDemo{

}

@AnnatDemo注解作用目標是用於對方法注解並保留在運行時的環境中,可利用反射獲得一個方法上的注解調用定義的方法。

 


原帖地址:https://www.cnblogs.com/Gordon-YangYiBao/archive/2012/08/07/2626340.html

 

最後更新:2017-04-03 07:57:27

  上一篇:go Maven學習一之安裝maven以及IDE配置
  下一篇:go java線程學習6——線程同步之同步鎖