1.注解入門
注解(Annotation)由jdk1.5后引入
1.注解作用:
1.不是程式本身,可以對程式作出解釋(與注釋功能一致)
2.可以被其他程式讀取(編譯器),
注釋與注解的區別:
注解資訊處理流程,是注解的和注釋的最大區別,沒有注解資訊處理流程,注解就沒有意義
注解的格式:
注解是以“@注解名”在代碼中存在,還可以添加一些引數值,例如:@SuppressWarnings(value=https://www.cnblogs.com/chengkuan/p/“unchecked”),
注解在哪里使用:
可以附加在package,class,method,field等上面,相當于給他們添加了額外的輔助資訊,
我們可以通過反射機制編程實作對這些元資料的訪問,
2.內置注解
@Override:定義在java.lang.Override中,此注釋只適用于修飾方法,
表示一個方法宣告打算重寫超類中的另一個方法宣告
@Deprecated:定義在java.lang.Deprecated中,此注釋可用于修辭方法,屬性,類,
表示不鼓勵程式員使用這樣的元素,通常是因為他很危隙訓存在更好的選擇
@SuppressWarnings:定義在java.lang.SuppressWarnings中,
用來抑制編譯時的警告資訊
3.自定義注解,元注解
1.元注解作用:
負責注解其他注釋,Java中定義了4個標準的meta-annotation型別,他們被用來提供對其他annotation型別做說明
這些型別和他們所支持的類在java.lang.annotation包中可以找到
@Target:用于描述注解的適用范圍
package(包):PACKAGE
類,介面,列舉,annotation:TYPE
構造器:CONSTRUCTOR
屬性:FIELD
方法:METHOD
區域變數:LOCAL_VARIABLE
引數:PARAMETER
@Retention:表示需要在什么級別保存該注釋資訊,用于描述注解的生命周期
SOURCE:在源檔案中有效(即源檔案保留)
CLASS:在class檔案中有效(即class保留)
RUNTIME:在運行使有效(即運行時保留),為Runtime可以被反射機制讀取
@Documented:
@Inherited
2.自定義注釋:
使用@interface自定義注解時,自動繼承了java.lang.annotation.Annotation介面
注:@interface用來宣告一個注釋,格式為 public @interface 注解名{定義體}
其中每一個方法實際上是宣告了一個配置引數
方法明就是引數的名稱
回傳值型別就是引數型別(回傳值型別只能是基本型別、class、String、enum)
可以通過default來宣告引數的默認值
如果只有一個引數成員,一般引數名為vaule
3.反射機制處理注解
ORM:類和表互相轉化
類和表結構對應
屬性和欄位對應
物件和機錄對應
使用注解完成類和表結構的映射關系

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/112797.html
標籤:Java
