Annotation(註解)是JDK5.0及以後版本引入的。它可以用於創建文檔,跟蹤代碼中的依賴性,甚至執行基本編譯時檢查。註解是以‘@註解名’在代碼中存在的,根據註解參數的個數,我們可以將註解分為:標記註解、單值註解、完整註解三類。它們都不會直接影響到程序的語義,只是作為註解(標識)存在,我們可以通過反射機制編程實現對這些元數據的訪問。另外,妳可以在編譯時選擇代碼裏的註解是否只存在於源代碼級,或者它也能在class文件中出現。
元數據的作用
如果要對於元數據的作用進行分類,大致可分為三類:
編寫文檔:通過代碼裏標識的元數據生成文檔。
代碼分析:通過代碼裏標識的元數據對代碼進行分析。
編譯檢查:通過代碼裏標識的元數據讓編譯器能實現基本的編譯檢查 @Override
Java代碼
packagecom.iwtxokhtd.annotation;
/**
* 測試Override註解
*@authorAdministrator
*
*/
publicclassOverrideDemoTest {
//@Override
publicString tostring(){
return測試註解;
}
}
@Deprecated的作用是對不應該在使用的方法添加註解,當編程人員使用這些方法時,將會在編譯時顯示提示信息,它與javadoc裏的@deprecated標記有相同的功能,準確的說,它還不如javadoc @deprecated,因為它不支持參數,使用@Deprecated的示例代碼示例如下:
Java代碼
packagecom.iwtxokhtd.annotation;
/**
* 測試Deprecated註解
*@authorAdministrator
*
*/
publicclassDeprecatedDemoTest {
publicstaticvoidmain(String[] args) {
//使用DeprecatedClass裏聲明被過時的方法
DeprecatedClass.DeprecatedMethod();
}
}
classDeprecatedClass{
@Deprecated
publicstaticvoidDeprecatedMethod() {
}
}
@SuppressWarnings,其參數有:
deprecation,使用了過時的類或方法時的警告
unchecked,執行了未檢查的轉換時的警告
fallthrough,當 Switch 程序塊直接通往下壹種情況而沒有 Break 時的警告
path,在類路徑、源文件路徑等中有不存在的路徑時的警告
serial,當在可序列化的類上缺少serialVersionUID 定義時的警告
finally ,任何 finally 子句不能正常完成時的警告
all,關於以上所有情況的警告 packagecom.iwtxokhtd.annotation;
importjava.util.ArrayList;
importjava.util.List;
publicclassSuppressWarningsDemoTest {
publicstaticListlist=newArrayList();
@SuppressWarnings(unchecked)
publicvoidadd(String data){
list.add(data);