java註解學習---元註解,註解類型,註解支持元素類型,註解基礎(一)

java註解學習---元註解,註解類型,註解支持元素類型,註解基礎(一)

一、JDK內置四個元註解
1、@Target 註解: 表示自定義的註解,使用的地方。
可選參數: java.lang.annotation.ElementType 中如下:
package java.lang.annotation;
public enum ElementType {
     TYPE, //適用class, interface, enum
     FIELD, //適用field
     METHOD, //適用method
     PARAMETER, //適用method上之parameter
     CONSTRUCTOR, //適用constructor
     LOCAL_VARIABLE, //適用局部變量
     ANNOTATION_TYPE, //適用annotation型態
     PACKAGE //適用package
}
補充: @Target 缺省,默認支持全部 ElementType 類型!

2、@Retention 註解:表示編譯程序如何處理自定義註解。
可選參數: java.lang.annotation.RetentionPolicy 中如下:
package java.lang.annotation;
public enum RetentionPolicy {
     SOURCE, //註解不會被編譯到 .class 文件中,如: @SuppressWarnings
註解
     CLASS,  / 註解會被編譯到 .class文件中,但不會被JVM加載,缺省 默認這個
     RUNTIME //JVM會把註解加載到內存裏,運行期間可見,所以可以通過反射讀取註解的信息。
}

3、@Documented 註解:將此註解包含在Javadoc中。

4、@Inherited 註解:允許子類繼承父類的註解。並不是說允許子註解類繼承父註解類。

補充: JDK內置四個元註解,僅用於自定義註解時,使用!

二、JDK1.5內置三個註解
1、@Override :限定子類重寫父類方法
2、@Deprecated : 標識某個方法,參數,包 等,已經過時,不建議使用!
3、@SuppressWarnings : 消除警告信息。

三、自定義註解類型
1、標記類型註解: 註解中沒有元素,稱爲標記型註解。 如: @Inherited、 @Deprecated
2、其他類型註解: 註解中定義了元素。 如: @SuppressWarnings

四、註解元素類型
1、所有基本數據類型。 如: int ,char ,boolean , 但 不能是包裝類型
2、 java.lang.String
3、 java.lang.Class
4、 java.lang.enum
5、 java.lang.Annotation
6、以上5種類型的數組: int[],String[],Class[] 等等。

注意:註解元素類型,不支持 包裝類!


---- 繼續學習 next :

    java註解學習---自定義註解定義java註解(二)


   java註解學習---@Inherited註解的理解學習(四)   




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