2022-05-05 16:41:42|已瀏覽:3733次
Java注解有哪些
Java注解也叫元數(shù)據(jù),即一種描述數(shù)據(jù)的數(shù)據(jù);注解可分為三類:1.Java自帶的標準注解;2.元注解;3.自定義注解。如果想具體了解Java注解有哪些,那不妨接著往下看吧!
注解也叫元數(shù)據(jù),即一種描述數(shù)據(jù)的數(shù)據(jù)。注解是JDK1.5版本開始引入的一個特性,用于對代碼進行說明,可以對包、類、接口、字段、方法參數(shù)、局部變量等進行注解。
注解可分為三類:
一類是Java自帶的標準注解,包括@Override(標明重寫某個方法)、@Deprecated(標明某個類或方法過時)和@SuppressWarnings(標明要忽略的警告),使用這些注解后編譯器就會進行檢查。
一類為元注解,元注解是用于定義注解的注解,包括@Retention(標明注解被保留的階段)、@Target(標明注解使用的范圍)、@Inherited(標明注解可繼承)、@Documented(標明是否生成javadoc文檔)、@Repeatable。
一類為自定義注解,可以根據(jù)自己的需求定義注解
元注解是可以注解到注解上的注解,或者說元注解是一種基本注解,但是它能夠應用到其它的注解上面。明白點說,就是我們定義注解時用的注解就是元注解。
除了@符號,注解很像是一個接口。定義注解的時候需要用到元注解。
在注解中一般會有一些元素以表示某些值。注解的元素看起來就像接口的方法,唯一的區(qū)別在于可以為其制定默認值。沒有元素的注解稱為標記注解,上面的@Test就是一個標記注解。
注解的可用的類型包括以下幾種:所有基本類型、String、Class、enum、Annotation、以上類型的數(shù)組形式。元素不能有不確定的值,即要么有默認值,要么在使用注解的時候提供元素的值。而且元素不能使用null作為默認值。注解在只有一個元素且該元素的 名稱是value的情況下,在使用注解的時候可以省略“value=”,直接寫需要的值即可。
元注解一共有5種, @Retention、@Documented、@Target、@Inherited、@Repeatable。
@Retention
英文意為保留期的意思。當 @Retention 應用到一個注解上的時候,它解釋說明了這個注解的的存活時間。
@Documented
這個元注解肯定是和文檔有關。它的作用是能夠將注解中的元素包含到 Javadoc 中去
@Target
目標的意思,@Target 指定了注解運用的地方
@Inherited
Inherited 是繼承的意思,但是它并不是說注解本身可以繼承,而是說如果一個超類被 @Inherited 注解過的注解進行注解的話,那么如果它的子類沒有被任何注解應用的話,那么這個子類就繼承了超類的注解
@Repeatable
Repeatable 自然是可重復的意思。@Repeatable 是 Java 1.8 才加進來的,所以算是一個新的特性。
注解是一系列元數(shù)據(jù),它提供數(shù)據(jù)用來解釋程序代碼,但是注解并非是所解釋的代碼本身的一部分。注解對于代碼的運行效果沒有直接影響。
1、提供信息給編譯器: 編譯器可以利用注解來探測錯誤和警告信息
比如 @Override提示子類要復寫父類中被 修飾的方法
2、編譯階段時的處理: 軟件工具可以用來利用注解信息來生成代碼、Html文檔或者做其它相應處理。
3、運行時的處理: 某些注解可以在程序運行的時候接受代碼的提取
注解主要針對的是編譯器和其它工具軟件;當開發(fā)者使用了Annotation 修飾了類、方法、Field 等成員之后,這些 Annotation 不會自己生效,必須由開發(fā)者提供相應的代碼來提取并處理 Annotation 信息。這些處理提取和處理 Annotation 的代碼統(tǒng)稱為 APT(Annotation Processing Tool)。
注:尊重原創(chuàng)文章,轉載請注明出處和鏈接 http://www.hebeijilong.cn/news-id-31213.html 違者必究!部分文章來源于網(wǎng)絡由培訓無憂網(wǎng)編輯部人員整理發(fā)布,內容真實性請自行核實或聯(lián)系我們,了解更多相關資訊請關注java培訓頻道查看更多,了解相關專業(yè)課程信息您可在線咨詢也可免費申請試課。關注官方微信了解更多:150 3333 6050