程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> J2SE >> J2SE 1.5的注釋語法(2)

J2SE 1.5的注釋語法(2)

編輯:J2SE

使用標簽最終是為了幫助開發人員提取注釋信息,然後根據不同需求做進一步處理,下面我們來看看如何獲取注釋信息。

import Java.lang.annotation.Annotation;
import tiger.annotation.MyTag;
public class TagTest{
@MyTag(name="MyTag",age=1)
public void test(){
}
public static void main(String[] args){
TagTest tt = new TagTest();
try {
Annotation[] annotation =tt.getClass().getMethod("test").getAnnotations();
for (Annotation tag :annotation) {
System.out.println("Tag is:" + tag);
System.out.println("tag.name()" + ((MyTag)tag).name());
System.out.println("tag.age()" + ((MyTag)(tag)).age());
}
} catch(NoSuchMethodException e) {
e.printStackTrace();
}
}
}

需要注意的一點是,在執行這段代碼之前我們還有一點小工作要做,還需要給我們的自定義標簽MyTag加上一個說明標簽,@ Retention, 表明注釋信息將可以在運行時刻通過反射機制得到。如果不加入這個標簽,上面的代碼將沒有任何輸出。修改以後的MyTag如下:

/**
* 用戶自定義標簽??帶有成員變量的MyTag
*/
@Retention(RetentionPolicy.RUNTIME)
public @interface MyTag {
String name();
int age();
}

然後我們執行TagTest可以得到輸出如下,

Tag is:@tiger.annotation.MyTag(name=MyTag, age=1)
tag.name()MyTag
tag.age()1

好了,Tiger新的注釋語法基本用法就這麼簡單,基本用法雖然簡單,但是獲取注釋信息之後如何處理確很值得推敲,我們可以用他們來做一些語法檢查,文件相關性檢查,進行各種統計等等。關於更多的Tiger新注釋語法的信息,可以訪問[link=http://Java.sun.com/J2SE/1.5.0/docs/guide/language/annotations.Html]。

以上代碼在win2k + J2SE5 GA下通過。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved