av激情亚洲男人的天堂国语,日韩欧美精品一中文字幕,无码av一区二区三区无码,国产又色又爽又刺激的a片,国产又色又爽又刺激的a片

Java元數(shù)據(jù)總結(jié):Java注釋的使用和定義

元數(shù)據(jù)從metadata一詞譯來(lái),就是“關(guān)于數(shù)據(jù)的數(shù)據(jù)”的意思。越來(lái)越的開(kāi)源框架都提供了“元數(shù)據(jù)”支持了,其實(shí)也就是注釋支持。今天系統(tǒng)學(xué)習(xí)一下Java注釋(Java元數(shù)據(jù))。本文內(nèi)容不限于Javadoc的注釋。

創(chuàng)新互聯(lián)建站服務(wù)項(xiàng)目包括寧河網(wǎng)站建設(shè)、寧河網(wǎng)站制作、寧河網(wǎng)頁(yè)制作以及寧河網(wǎng)絡(luò)營(yíng)銷策劃等。多年來(lái),我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,寧河網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到寧河省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

1.什么是Java元數(shù)據(jù),有什么作用?

元數(shù)據(jù),就是“關(guān)于數(shù)據(jù)的數(shù)據(jù)”。功能也有很多啦。你可能用過(guò)Javadoc的注釋自動(dòng)生成文檔。這就是元數(shù)據(jù)功能的一種??偟膩?lái)說(shuō),元數(shù)據(jù)可以用來(lái)創(chuàng)建文檔,跟蹤代碼的依賴性,執(zhí)行編譯時(shí)格式檢查,代替已有的配置文件(如Hibernate也提供了注釋配置)

注釋有3中基本類型

a.標(biāo)記注釋      --沒(méi)有變量,只有名稱標(biāo)識(shí)。例如 @annotation
b.單一值注釋    --在標(biāo)記注釋的基礎(chǔ)上提供一段數(shù)據(jù)。如 @annotation(“data”)
c.完整注釋      --可以包括多個(gè)數(shù)據(jù)成員,每個(gè)數(shù)據(jù)成員由名稱和值構(gòu)成。
                  @annotation(val1="data1",val2="data2")

2.Java的“注釋”

Java中提供3個(gè)內(nèi)置注釋類型

a. Override ,只能用于方法(不能用于類,包聲明或者其他構(gòu)造)
              作用:可以保證編譯時(shí)候Override函數(shù)的聲明正確性
              用法:@Override
                    public void fun(){..}

b.Deprecated  同樣只能作用與方法
              作用:對(duì)不應(yīng)再使用的方法進(jìn)行注解
              用法:@Deprecated public void fun{...} //它們說(shuō)這個(gè)注釋跟函數(shù)要同一行

c.SupressWarnings 可以注釋一段代碼
                  作用:關(guān)閉特定的警告信息,例如你在使用泛型的時(shí)候未指定類型
                  用法: @SupressWarnings(value={"unchecked"})
                         ..代碼

Java中還提供了四種元注釋,專門負(fù)責(zé)注釋其他的注釋

@Target   表示該注釋可以用于什么地方。可用的ElementType參數(shù)包括:
          CONSTRUCTOR : 構(gòu)造器的聲明
          FIELD : 域聲明(包括enum實(shí)例)
          LOCAL_VARIABLE : 局部變量聲明
          METHOD : 方法聲明
          PACKAGE : 包聲明
          PARAMETER : 參數(shù)聲明
          TYPE : 類、接口 (包括注解類型) 或enum聲明

@Retention 表示需要在什么級(jí)別保存該注釋信息??蛇x的RetentionPoicy參數(shù)包括:
           SOURCE : 注釋將被編譯器丟掉
           CLASS : 注釋在class文件中可用,但會(huì)被VM丟棄
           RUNTIME : VM將在運(yùn)行時(shí)也保留注釋,因此可以通過(guò)反射機(jī)制讀取注釋的信息。

@Documented 將注釋包含在JavaDoc中

@Inheried  允許子類繼承父類中的注釋。

3. 在Java中定義自己的注釋

Java語(yǔ)言支持一種新的類型——注釋類型(annotation type),跟普通類差不多,在類中以符號(hào)( @ )的形式注釋其他 Java 代碼

下面將通過(guò)一個(gè)簡(jiǎn)單的例子來(lái)實(shí)現(xiàn)(代碼是Brett McLaughlin 的)
@interface 申明

i.簡(jiǎn)單的注釋類型

 
 
 
  1. package com.oreilly.tiger.ch06;  
  2. /**  
  3.  * Marker annotation to indicate that a method or class  
  4.  * is still in progress.  
  5.  */ 
  6. public @interface InProgress { }  

ii.使用定制的注釋類型

 
 
 
  1. @com.oreilly.tiger.ch06.InProgress  
  2. public void calculateInterest(float amout,float rate)  
  3. {  
  4.       //Need to finish this method later  
  5. }  

iii.添加成員

 
 
 
  1. package com.oreilly.tiger.ch06;  
  2. /**  
  3.  * Marker annotation to indicate that a method or class  
  4.  * is still in progress.  
  5.  */ 
  6. public @interface InProgress {  
  7.   String value();   
  8.  }  
  9.  
  10. @com.oreilly.tiger.ch06.InProgress  
  11. @TODO("Figure out the amount of interest per month")  
  12. //或者@TODO(value="Figure out the amount of interest per month")  
  13. public void calculateInterest(float amount,float rate)  
  14. {  
  15. }  
  16.  

iv.設(shè)置默認(rèn)值

 
 
 
  1. package com.oreilly.tiger.ch06;  
  2. public @interface GroupTODO {  
  3.   public enum Serverity { CRITICAL,IMPORTANT,IRIVIAL,DOCMENTATION };  
  4.   Severity severity()  
  5.           default Severity.IMPORTANT;  
  6.   String item ();  
  7.   String assignedTo();  
  8.   String dateAssigned();  
  9. }  
  10. }  

v.使用默認(rèn)值

 
 
 
  1. @com.oreilly.tiger.ch06.InProgress  
  2. @GroupTODO(  
  3.  item="Figure out the amount of interest per month",  
  4.  assignedTo = "Brett McLaughlin",  
  5.  dateAssigned = "08/04/2004" 
  6. )  
  7.  
  8. public void calculateInterest(float amount, float rate)  
  9. {  
  10.    //Need to finish this method later  
  11. }  
  12.  

vi.改寫默認(rèn)值

 
 
 
  1. @com.oreilly.tiger.ch06.InProgress  
  2. @GroupTODO 
  3. {  
  4.    severity = GroupTODO.Severity.DOCUMENTATION,  
  5.    item = "Need to explain how this rather unusal method works",  
  6.    assignedTo = "Jon Stevens",  
  7.    dateAssigned = "07/30/2004" 

這樣就對(duì)Java元數(shù)據(jù)/Java注釋進(jìn)行了總結(jié)。

【編輯推薦】

  1. J2SE5.0中的注釋特性
  2. JavaDoc注釋的使用
  3. EJB注釋是通過(guò)@來(lái)實(shí)現(xiàn)的
  4. Eclipse+JBoss+EJB3的Session Bean注釋方法
  5. J2SE1.5注釋語(yǔ)法簡(jiǎn)介

當(dāng)前題目:Java元數(shù)據(jù)總結(jié):Java注釋的使用和定義
文章來(lái)源:http://uogjgqi.cn/article/dphisip.html
掃二維碼與項(xiàng)目經(jīng)理溝通

我們?cè)谖⑿派?4小時(shí)期待你的聲音

解答本文疑問(wèn)/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流