元註解的做用就是負責註解其餘註解。Java5.0定義了4個標準的meta-annotation類型,它們被用來提供對其它 annotation類型做說明。Java5.0定義的元註解:java
用於說明該註解的做用域.基本上囊括了全部地方:ElementType可選數組
該元註解用於聲明註解的生命週期:RetentionPlicy 可選函數
標註性註解,代表該註解是否容許被子註解繼承ui
生成javadoc時會包含該註解spa
使用@interface自定義註解時,自動繼承了java.lang.annotation.Annotation接口,由編譯程序自動完成其餘細節。在定義註解時,不能繼承其餘的註解或接口。@interface用來聲明一個註解,其中的每個方法其實是聲明瞭一個配置參數。方法的名稱就是參數的名稱,返回值類型就是參數的類型(返回值類型只能是基本類型、Class、String、enum)。能夠經過default來聲明參數的默認值。.net
public @interface 註解名 {定義體}code
例如:繼承
/** * 水果顏色註解 * @author peida * */ @Target(ElementType.FIELD) @Retention(RetentionPolicy.RUNTIME) @Documented public @interface FruitColor { /** * 顏色枚舉 * @author peida * */ public enum Color{ BULE,RED,GREEN}; /** * 顏色屬性 * @return */ Color fruitColor() default Color.GREEN; }
概念:經過反射獲取類,函數或成員上的運行時註解信息,從而實現動態控制程序運行的邏輯接口