Java基礎與案例開發詳解(徐明華) 16-3.ppt

Java基礎與案例開發詳解(徐明華) 16-3.ppt

  1. 1、本文檔共5頁,可閱讀全部內容。
  2. 2、本文檔內容版權歸屬內容提供方,所產生的收益全部歸內容提供方所有。如果您對本文有版權爭議,可選擇認領,認領后既往收益都歸您。
  3. 3、本文檔由用戶上傳,本站不保證質量和數量令人滿意,可能有諸多瑕疵,付費之前,請仔細先通過免費閱讀內容等途徑辨別內容交易風險。如存在嚴重掛羊頭賣狗肉之情形,可聯系本站下載客服投訴處理。
  4. 文檔侵權舉報電話:18428362892(電話支持時間:9:00-19:00)。
16.3 自定義標注類型 標注的強大之處是它不僅可以使Java程序變成自描述的,而且允許程序員自定義標注類型。標注類型的定義和接口類型的定義差不多,只是在interface前面多了一個“@”。 例如: /** 自定義標注類型 */ public @interface MyAnnotation {} 上面的代碼定義了一個最簡單的標注類型,這個標注類型沒有定義屬性,也可以理解為是一個標記標注。就像Serializable接口一樣是一個標記接口,里面未定義任何方法。 16.3 自定義標注類型 當然,也可以定義帶有屬性的標注類型,例如: public @interface MyAnnotation { String value(); //定義一個屬性 } 標注類型定義好之后,就可以按如下格式來使用了: /** 使用自定義標注類型:MyAnnotation */ class UserMyAnnotation{ @MyAnnotation("abc") public void myMethod(){ System.out.println("使用自定義的標注"); } } 16.3 自定義標注類型 在定義標注類型時,還可以給它的屬性指定默認值: //定義自己的一個枚舉類型 enum Status {ACTIVE, INACTIVE}; public @interface MyAnnotation { Status status() default Status.ACTIVE; //給status屬性指定默認值 } 那么,在使用時,就可以不需要給status屬性顯式指定值了,它就會使用默認值: /** 使用自定義標注類型: MyAnnotation */ class UserMyAnnotation { //value屬性的值為“abc”;status屬性使用默認值Status.ACTIVE @MyAnnotation(value="abc") public void myMethod() { System.out.println("使用自定義的標注"); } } 16.3 自定義標注類型 當然,你還是可以給有默認值的屬性顯式指定值的: class UserMyAnnotation { @MyAnnotation(value="xxx", status=Status.INACTIVE) public void myMethod2() { System.out.println("使用自定義的標注"); } } 這里使用這個自定義標注類型時,給它的多個屬性賦了值,多個屬性之間用逗號“,”分隔。 * *

您可能關注的文檔

文檔評論(0)

ouyangxiaoxin

相關文檔

相關課程推薦