- Annotation 是JDK5.0引入的新技術(shù)
- Annotation 的作用
不是程序本身,可以對(duì)程序作出解釋
可以被其他程序讀取 - Annotation 格式
"@注釋名"在代碼中存在,還可以添加一些參數(shù)值,例如:@SuppressWarnings(value = "unchecked") - 使用范圍
可以附加在package,class,method,field 等上面,相當(dāng)于給他們添加了額外的輔助信息,可以通過(guò)反射機(jī)制編程實(shí)現(xiàn)對(duì)這些元數(shù)據(jù)的訪問(wèn) - 內(nèi)置注解
@Override @Deprecated
@SuppressWarnings:用來(lái)抑制編譯時(shí)的警告信息
@SuppressWarnings("all"/"unchecked"/value = {"unchecked","deprecation"}) - 元注解:負(fù)責(zé)注解其他的注解,java 定義了四個(gè)meta-annotation
@Target:用于描述注解的使用范圍
@Retention:表示需要在什么級(jí)別保存該注解信息,用于描述注解的聲明周期(SOURCE<CALSS<RUNTIME)
@Document:說(shuō)明該注解將被包含在javadoc 中
@Inherited:說(shuō)明子類(lèi)可以繼承父類(lèi)中的該注解
- 注解定義方式
// 元注解xxx
@interface MyAnnotation{
}

image.png
可以通過(guò)反射獲取到注解中的值