DANCE WITH JAVA

          開(kāi)發(fā)出高質(zhì)量的系統(tǒng)

          常用鏈接

          統(tǒng)計(jì)

          積分與排名

          好友之家

          最新評(píng)論

          Jdk1.5 annotation

          Jdk1.5 annotation 內(nèi)置注釋
          1,什么是元數(shù)據(jù):
          元數(shù)據(jù)就是 關(guān)于數(shù)據(jù)的數(shù)據(jù)
          2,元數(shù)據(jù)的作用
          數(shù)據(jù)的好處分為三類:文檔編制、編譯器檢查和代碼分析。代碼級(jí)文檔最常被引用。元數(shù)據(jù)提供了一種有用的方法來(lái)
          指明方法是否取決于其他方法,它們是否完整,特定類是否必須引用其他類,等等。這確實(shí)非常有用,但對(duì)于將元數(shù)
          據(jù)添加到 Java 語(yǔ)言中來(lái)說(shuō),文檔編制可能是 最不相關(guān)的理由。Javadoc 已經(jīng)提供了非常容易理解和健壯的方
          法來(lái)文檔化代碼。同時(shí)由于已經(jīng)存在文檔編制工具,并且在大多數(shù)時(shí)候都工作得很好時(shí),所以基本上不需要編寫
          文檔編制工具。

          內(nèi)置的注釋
          Override它指明注釋的方法將覆蓋超類中的方法
          如果你有一個(gè)父類如下:

          public ? class ?Parent {
          ????
          public ? void ?methodOne(String?str) {
          ????}

          }

          一個(gè)子類如下
          public ? class ?Child? extends ?Parent? {
          ????@Override
          ????
          public ? void ?methodOne(String?str) {
          ????}

          }

          你想讓子類Override父類的方法methodOne(String str);如果不加入@Override注釋,并且剛好你寫錯(cuò)了方法
          例如寫成public void methodone(String str),這個(gè)時(shí)候時(shí)不會(huì)報(bào)錯(cuò)的。編譯器正常通過(guò),等以后你要尋找這個(gè)
          錯(cuò)誤的時(shí)候需要花費(fèi)大量的時(shí)間。如果這個(gè)時(shí)候你寫了@Override注釋,編譯器會(huì)檢查父類中是否有這個(gè)方法,如果沒(méi)有
          就提示錯(cuò)誤。這樣可以盡早的發(fā)現(xiàn)錯(cuò)誤。

          Deprecated與 Override 一樣, Deprecated 是標(biāo)記注釋。可以使用 Deprecated 來(lái)對(duì)不應(yīng)再使用的方法進(jìn)行注釋。
          這個(gè)不詳細(xì)了說(shuō)了,JDK里邊有大量的應(yīng)用,平時(shí)應(yīng)用也不少,就是標(biāo)記一些方法不建議使用。例如Date的很多方法。

          SuppressWarnings用來(lái)阻止一些無(wú)所謂的警告
          在使用JDK1.5后,如果你寫如下一個(gè)方法:

          public ? void ?methodOne(String?str) {
          ????List?list?
          = ? new ?ArrayList();
          ????list.add(
          " str " );
          }
          編繹器會(huì)提示警告,而這個(gè)代碼本身是沒(méi)有錯(cuò)誤的,如果你想禁止這些無(wú)所謂的警告,就要使用SuppressWarnings了
          有兩種形式:
          @SuppressWarnings("unchecked")
          @SuppressWarnings(value={"unchecked"})
          這兩種都可以,如果你要阻止多個(gè)警告,就必須要使用第二種了,如下
          @SuppressWarnings(value={"unchecked","fallthrough"})
          上邊的代碼加入注釋后如下:
          @SuppressWarnings("unchecked")
          public?void?methodOne(String?str){
          ????List?list?
          =?new?ArrayList();
          ????list.add(
          "str");
          }
          Jdk1.5 annotation 自定義注釋
          這里有一個(gè)寫的不錯(cuò)的文章,我就不再重復(fù)了。
          http://www.ibm.com/developerworks/cn/java/j-annotate2.html
          另外記憶中Javaeye有一篇寫的更好的關(guān)于annotation的文章,但是沒(méi)有找到,如果誰(shuí)找到了,放個(gè)鏈接過(guò)來(lái)
          吧。

          posted on 2007-02-25 10:50 dreamstone 閱讀(2795) 評(píng)論(3)  編輯  收藏 所屬分類: jdk相關(guān)

          評(píng)論

          # re: Jdk1.5 annotation[未登錄](méi) 2007-02-25 18:12 dennis

          javaeye的專欄 http: //www.javaeye.com/subject/Annotation
            回復(fù)  更多評(píng)論   

          # re: Jdk1.5 annotation 2007-02-25 18:44 dreamstone

          謝謝了。呵呵。
          當(dāng)時(shí)看過(guò)這個(gè)版本,後來(lái)找了下沒(méi)找到。  回復(fù)  更多評(píng)論   

          # re: Jdk1.5 annotation 2007-02-28 16:58 αβγ

          對(duì)于這些新特性,我就沒(méi)有用過(guò)。不過(guò)真心謝謝樓主的介紹,至少自己又更多的了解java了。  回復(fù)  更多評(píng)論   

          主站蜘蛛池模板: 格尔木市| 章丘市| 贵州省| 陕西省| 闽清县| 东丽区| 章丘市| 衢州市| 静海县| 辽阳县| 安多县| 济宁市| 巫溪县| 平谷区| 深州市| 屏东市| 葫芦岛市| 福海县| 龙陵县| 揭西县| 蓝山县| 阿克陶县| 西畴县| 新乐市| 清新县| 射阳县| 贵定县| 垫江县| 邢台市| 安图县| 始兴县| 仙居县| 兰州市| 清水河县| 绥江县| 元氏县| 乐陵市| 延长县| 申扎县| 黑龙江省| 林西县|