<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當(dāng)前位置: 首頁 - 科技 - 知識(shí)百科 - 正文

        J2SE1.5注釋語法_MySQL

        來源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-09 17:11:16
        文檔

        J2SE1.5注釋語法_MySQL

        J2SE1.5注釋語法_MySQL:J2SE 說起注解語法,對(duì)于任何一個(gè)Java開發(fā)人員來說都已經(jīng)耳熟能詳了,我們每天都在使用著 @author, @param,等等編寫注釋,然后用javadoc生成文檔。Java的這種方便的文檔生成方法受到了開發(fā)者的普遍贊譽(yù)。而從JDK1.5開始,注釋語法提供了更為強(qiáng)大的功能。
        推薦度:
        導(dǎo)讀J2SE1.5注釋語法_MySQL:J2SE 說起注解語法,對(duì)于任何一個(gè)Java開發(fā)人員來說都已經(jīng)耳熟能詳了,我們每天都在使用著 @author, @param,等等編寫注釋,然后用javadoc生成文檔。Java的這種方便的文檔生成方法受到了開發(fā)者的普遍贊譽(yù)。而從JDK1.5開始,注釋語法提供了更為強(qiáng)大的功能。

        J2SE

          說起注解語法,對(duì)于任何一個(gè)Java開發(fā)人員來說都已經(jīng)耳熟能詳了,我們每天都在使用著 @author, @param,等等編寫注釋,然后用javadoc生成文檔。Java的這種方便的文檔生成方法受到了開發(fā)者的普遍贊譽(yù)。而從JDK1.5開始,注釋語法提供了更為強(qiáng)大的功能。

          我們先談?wù)勛⑨屨Z法本身,它有時(shí)候也稱為meta-data :“描述數(shù)據(jù)的數(shù)據(jù)” 。一般來說它們可以被用來生成文檔,檢查代碼間依賴關(guān)系,幫助編譯器作語法檢查。時(shí)下比較流行的工具有Xdoclet等。對(duì)于文檔生成早已經(jīng)有了javadoc工具的完美表現(xiàn),而對(duì)于代碼檢查,如今java也提供了語言級(jí)的支持。

          我們知道,javadoc是通過提取java源文件中的標(biāo)簽信息來生成文檔。所以要學(xué)習(xí)新的注釋語法,們首先要熟悉的就是新增的標(biāo)簽。新的注釋語法支持兩種標(biāo)簽,系統(tǒng)標(biāo)準(zhǔn)標(biāo)簽和用戶自定義標(biāo)簽。標(biāo)簽的符號(hào)也原先一樣,@符號(hào)加上標(biāo)簽名字。我們先從JDK1.5自帶的標(biāo)準(zhǔn)標(biāo)簽說起。

          首先介紹@override , 也不用多羅嗦,顧名思義了,就是用來說明方法覆載的。我們假設(shè)有一個(gè)子類必須要覆載父類的方法.

          ================================================================================
          public class Parent{

          public void foo(){
          System.out.println("Original Implementation of foo");
          }

          }

          public class Child extends Parent{

          @Override
          public void foo(){
          System.out.println("Overide Implementation of foo");
          }

          }
          ================================================================================

          目前為止我們看不出來這個(gè)@Override給我們帶來了任何好處,所以我們先說說加個(gè)這個(gè)標(biāo)簽后,我們用javac編譯的時(shí)候編譯器執(zhí)行了些什么呢?編譯器會(huì)檢查這個(gè)方法,然后從父類查找是否有這個(gè)方法,否則就編譯出錯(cuò)。這個(gè)特性可以幫助我們避免一些低級(jí)錯(cuò)誤。上面這個(gè)例子,子類想覆載foo()方法,不過你可能一時(shí)疏忽把它寫成了fob(), 對(duì)于這樣的”低級(jí)錯(cuò)誤”,如果你沒有在前期就發(fā)現(xiàn)的話,到系統(tǒng)集成測(cè)試的時(shí)候,可能會(huì)化上你幾個(gè)小時(shí)甚至一兩天去找出這樣的bug。現(xiàn)在好了,編譯器在編譯的時(shí)候就會(huì)給出錯(cuò)誤,

          Child.java:3: method does not override a method from its superclass
          @Override
          ^
          1 error


          怎么樣,這個(gè)功能還不錯(cuò)吧。
           看過了標(biāo)準(zhǔn)標(biāo)簽的使用方法,我們來看看用戶自定義標(biāo)簽。首先介紹@interface, 它用于定義新的注釋類型(annotation type)。新建一個(gè)注釋類型看起來和定義一Interface 沒有什么兩樣,MyTag.java用于新建一個(gè)用戶自定義標(biāo)簽,代碼如下,

          ===============================================================================
          package tiger.annotation;
          /**
          * 用戶自定義標(biāo)簽??MyTag
          */
          public @interface MyTag { }

          定義了一個(gè)tag之后,我們就可以在任何java文件中使用這個(gè)tag了,
          import tiger.annotation.MyTag;
          public class TagTest{

          @MyTag
          public void testTag(){
          }
          }
          ===============================================================================

          注釋類型還可以有成員變量,

          ==============================================================================
          package tiger.annotation;
          /**
          * 用戶自定義標(biāo)簽??帶有成員變量的MyTag
          */
          public @interface MyTag {

          String name();

          int age();
          }
          =============================================================================

          然后我們可以這么使用這個(gè)標(biāo)簽,

          @MyTag(name="MyTag",age=1)
          public void testTag(){
          }

          使用標(biāo)簽最終是為了幫助開發(fā)人員提取注釋信息,然后根據(jù)不同需求做進(jìn)一步處理,下面我們來看看如何獲取注釋信息。

          =============================================================================
          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();
          }
          }
          }
          ===============================================================================

          需要注意的一點(diǎn)是,在執(zhí)行這段代碼之前我們還有一點(diǎn)小工作要做,還需要給我們的自定義標(biāo)簽MyTag加上一個(gè)說明標(biāo)簽,@ Retention, 表明注釋信息將可以在運(yùn)行時(shí)刻通過反射機(jī)制得到。如果不加入這個(gè)標(biāo)簽,上面的代碼將沒有任何輸出。修改以后的MyTag如下:

          ================================================================================
          /**
          * 用戶自定義標(biāo)簽??帶有成員變量的MyTag
          */
          @Retention(RetentionPolicy.RUNTIME)
          public @interface MyTag {

          String name();

          int age();
          }
          ================================================================================

          然后我們執(zhí)行TagTest可以得到輸出如下,

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

          好了,Tiger新的注釋語法基本用法就這么簡(jiǎn)單,基本用法雖然簡(jiǎn)單,但是獲取注釋信息之后如何處理確很值得推敲,我們可以用他們來做一些語法檢查,文件相關(guān)性檢查,進(jìn)行各種統(tǒng)計(jì)等等。關(guān)于更多的Tiger新注釋語法的信息,可以訪問[link=http://java.sun.com/j2se/1.5.0/docs/guide/language/annotations.html]。

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

        聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        J2SE1.5注釋語法_MySQL

        J2SE1.5注釋語法_MySQL:J2SE 說起注解語法,對(duì)于任何一個(gè)Java開發(fā)人員來說都已經(jīng)耳熟能詳了,我們每天都在使用著 @author, @param,等等編寫注釋,然后用javadoc生成文檔。Java的這種方便的文檔生成方法受到了開發(fā)者的普遍贊譽(yù)。而從JDK1.5開始,注釋語法提供了更為強(qiáng)大的功能。
        推薦度:
        標(biāo)簽: 標(biāo)簽 定義
        • 熱門焦點(diǎn)

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 亚洲热妇无码AV在线播放| 免费一级特黄特色大片在线观看| 亚洲日韩欧洲无码av夜夜摸| 美女视频黄.免费网址| 亚洲A∨午夜成人片精品网站| 青草久久精品亚洲综合专区| 成人免费淫片在线费观看| 亚洲乱亚洲乱妇24p| 国产精品免费_区二区三区观看 | 亚洲一区二区三区偷拍女厕| caoporn国产精品免费| 亚洲国产综合无码一区 | 一区在线免费观看| 亚洲一区二区三区偷拍女厕| 久久久免费的精品| 亚洲人成免费电影| 日本免费电影一区| 亚洲高清免费视频| 久久亚洲美女精品国产精品| 日本免费网址大全在线观看| 亚洲а∨精品天堂在线| 亚洲精品无码久久毛片| 免费黄网站在线看| 亚洲六月丁香婷婷综合| 免费观看四虎精品国产永久| j8又粗又长又硬又爽免费视频| 亚洲国产精品va在线播放| 91免费国产在线观看| 国产精品亚洲色图| 亚洲AV无码一区二区三区系列| 久久久久久久免费视频| 免费一区二区三区在线视频| 久久香蕉国产线看观看亚洲片| 久久天天躁狠狠躁夜夜免费观看| 免费精品视频在线| 蜜芽亚洲av无码精品色午夜| 日本特黄特黄刺激大片免费| 三年片在线观看免费西瓜视频| 亚洲一区二区久久| 中文字幕不卡亚洲 | 四虎国产精品成人免费久久|