亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java經(jīng)驗(yàn)點(diǎn)滴:類注釋文檔編寫方法

 更新時(shí)間:2006年12月23日 00:00:00   作者:  
文章來源:csdn 作者:chensheng913

對(duì)于Java語言,最體貼的一項(xiàng)設(shè)計(jì)就是它并沒有打算讓人們?yōu)榱藢懗绦蚨鴮懗绦颉藗円残枰紤]程序的文檔化問題。對(duì)于程序的文檔化,最大的問題莫過于對(duì)文檔的維護(hù)。若文檔與代碼分離,那么每次改變代碼后都要改變文檔,這無疑會(huì)變成相當(dāng)麻煩的一件事情。


  解決的方法看起來似乎很簡單:將代碼同文檔“鏈接”起來。為達(dá)到這個(gè)目的,最簡單的方法是將所有內(nèi)容都置于同一個(gè)文件。然而,為使一切都整齊劃一,還必須使用一種特殊的注釋語法,以便標(biāo)記出特殊的文檔;另外還需要一個(gè)工具,用于提取這些注釋,并按有價(jià)值的形式將其展現(xiàn)出來。這些都是Java必須做到的。

  用于提取注釋的工具叫作javadoc。它采用了部分來自Java編譯器的技術(shù),查找我們置入程序的特殊注釋標(biāo)記。它不僅提取由這些標(biāo)記指示的信息,也將毗鄰注釋的類名或方法名提取出來。這樣一來,我們就可用最輕的工作量,生成十分專業(yè)的程序文檔。
javadoc輸出的是一個(gè)HTML文件,可用自己的Web瀏覽器查看。該工具允許我們創(chuàng)建和管理單個(gè)源文件,并生動(dòng)生成有用的文檔。由于有了jvadoc,所以我們能夠用標(biāo)準(zhǔn)的方法創(chuàng)建文檔。而且由于它非常方便,所以我們能輕松獲得所有Java庫的文檔。

  2 具體語法

  所有javadoc命令都只能出現(xiàn)于“/**”注釋中。但和平常一樣,注釋結(jié)束于一個(gè)“*/”。主要通過兩種方式來使用javadoc:嵌入的HTML,或使用“文檔標(biāo)記”。其中,“文檔標(biāo)記”(Doc tags)是一些以“@”開頭的命令,置于注釋行的起始處(但前導(dǎo)的“*”會(huì)被忽略)。
有三種類型的注釋文檔,它們對(duì)應(yīng)于位于注釋后面的元素:類、變量或者方法。也就是說,一個(gè)類注釋正好位于一個(gè)類定義之前;變量注釋正好位于變量定義之前;而一個(gè)方法定義正好位于一個(gè)方法定義的前面。如下面這個(gè)簡單的例子所示:


/** 一個(gè)類注釋 */
public class docTest {
/** 一個(gè)變量注釋 */
public int i;
/** 一個(gè)方法注釋 */
public void f() {}
}

注意javadoc只能為public(公共)和protected(受保護(hù))成員處理注釋文檔?!皃rivate”(私有)和“友好”(詳見5章)成員的注釋會(huì)被忽略,我們看不到任何輸出(也可以用-private標(biāo)記包括private成員)。這樣做是有道理的,因?yàn)橹挥衟ublic和protected成員才可在文件之外使用,這是客戶程序員的希望。然而,所有類注釋都會(huì)包含到輸出結(jié)果里。
上述代碼的輸出是一個(gè)HTML文件,它與其他Java文檔具有相同的標(biāo)準(zhǔn)格式。因此,用戶會(huì)非常熟悉這種格式,可在您設(shè)計(jì)的類中方便地“漫游”。設(shè)計(jì)程序時(shí),請(qǐng)務(wù)必考慮輸入上述代碼,用javadoc處理一下,觀看最終HTML文件的效果如何。

  3 嵌入HTML
  javadoc將HTML命令傳遞給最終生成的HTML文檔。這便使我們能夠充分利用HTML的巨大威力。當(dāng)然,我們的最終動(dòng)機(jī)是格式化代碼,不是為了嘩眾取寵。下面列出一個(gè)例子:


/**
*
* System.out.println(new Date());
*

*/

亦可象在其他Web文檔里那樣運(yùn)用HTML,對(duì)普通文本進(jìn)行格式化,使其更具條理、更加美觀:
/**
* 您甚至可以插入一個(gè)列表:
*

*
項(xiàng)目一
*
項(xiàng)目二
*
項(xiàng)目三
*

*/

注意在文檔注釋中,位于一行最開頭的星號(hào)會(huì)被javadoc丟棄。同時(shí)丟棄的還有前導(dǎo)空格。javadoc會(huì)對(duì)所有內(nèi)容進(jìn)行格式化,使其與標(biāo)準(zhǔn)的文檔外觀相符。不要將

  這樣的標(biāo)題當(dāng)作嵌入HTML使用,因?yàn)閖avadoc會(huì)插入自己的標(biāo)題,我們給出的標(biāo)題會(huì)與之沖撞。
所有類型的注釋文檔——類、變量和方法——都支持嵌入HTML。

  4 @see:引用其他類
  所有三種類型的注釋文檔都可包含@see標(biāo)記,它允許我們引用其他類里的文檔。對(duì)于這個(gè)標(biāo)記,javadoc會(huì)生成相應(yīng)的HTML,將其直接鏈接到其他文檔。格式如下:

  @see 類名
  @see 完整類名
  @see 完整類名
  每一格式都會(huì)在生成的文檔里自動(dòng)加入一個(gè)超鏈接的“See Also”(參見)條目。注意javadoc不會(huì)檢查我們指定的超鏈接,不會(huì)驗(yàn)證它們是否有效。

  5 類文檔標(biāo)記
  隨同嵌入HTML和@see引用,類文檔還可以包括用于版本信息以及作者姓名的標(biāo)記。類文檔亦可用于“接口”目的(本書后面會(huì)詳細(xì)解釋)。

  1. @version
  格式如下:
  @version 版本信息
  其中,“版本信息”代表任何適合作為版本說明的資料。若在javadoc命令行使用了“-version”標(biāo)記,就會(huì)從生成的HTML文檔里提取出版本信息。

2. @author
  格式如下:
  @author 作者信息
  其中,“作者信息”包括您的姓名、電子函件地址或者其他任何適宜的資料。若在javadoc命令行使用了“-author”標(biāo)記,就會(huì)專門從生成的HTML文檔里提取出作者信息。
可為一系列作者使用多個(gè)這樣的標(biāo)記,但它們必須連續(xù)放置。全部作者信息會(huì)一起存入最終HTML代碼的單獨(dú)一個(gè)段落里。

  6 變量文檔標(biāo)記
  變量文檔只能包括嵌入的HTML以及@see引用。

  7 方法文檔標(biāo)記
  除嵌入HTML和@see引用之外,方法還允許使用針對(duì)參數(shù)、返回值以及違例的文檔標(biāo)記。

  1. @param
  格式如下:
  @param 參數(shù)名 說明
  其中,“參數(shù)名”是指參數(shù)列表內(nèi)的標(biāo)識(shí)符,而“說明”代表一些可延續(xù)到后續(xù)行內(nèi)的說明文字。一旦遇到一個(gè)新文檔標(biāo)記,就認(rèn)為前一個(gè)說明結(jié)束??墒褂萌我鈹?shù)量的說明,每個(gè)參數(shù)一個(gè)。

  2. @return
  格式如下:
  @return 說明
  其中,“說明”是指返回值的含義。它可延續(xù)到后面的行內(nèi)。

  3. @exception
  有關(guān)“違例”(Exception)的詳細(xì)情況,我們會(huì)在第9章講述。簡言之,它們是一些特殊的對(duì)象,若某個(gè)方法失敗,就可將它們“扔出”對(duì)象。調(diào)用一個(gè)方法時(shí),盡管只有一個(gè)違例對(duì)象出現(xiàn),但一些特殊的方法也許能產(chǎn)生任意數(shù)量的、不同類型的違例。所有這些違例都需要說明。所以,違例標(biāo)記的格式如下:
  @exception 完整類名 說明
  其中,“完整類名”明確指定了一個(gè)違例類的名字,它是在其他某個(gè)地方定義好的。而“說明”(同樣可以延續(xù)到下面的行)告訴我們?yōu)槭裁催@種特殊類型的違例會(huì)在方法調(diào)用中出現(xiàn)。

  4. @deprecated
  這是Java 1.1的新特性。該標(biāo)記用于指出一些舊功能已由改進(jìn)過的新功能取代。該標(biāo)記的作用是建議用戶不必再使用一種特定的功能,因?yàn)槲磥砀陌鏁r(shí)可能摒棄這一功能。若將一個(gè)方法標(biāo)記為@deprecated,則使用該方法時(shí)會(huì)收到編譯器的警告。 

相關(guān)文章

  • Java實(shí)現(xiàn)英文猜詞游戲的示例代碼

    Java實(shí)現(xiàn)英文猜詞游戲的示例代碼

    這篇文章主要介紹了如何用Java編寫一個(gè)英文猜詞游戲,可以用來背英語單詞。文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2022-02-02
  • SpringMVC開發(fā)restful API之用戶查詢代碼詳解

    SpringMVC開發(fā)restful API之用戶查詢代碼詳解

    這篇文章主要介紹了SpringMVC開發(fā)restful API之用戶查詢代碼詳解,小編覺得挺不錯(cuò)的,這里分享給大家,需要的朋友可以參考。下面隨小編一起看看吧。
    2017-11-11
  • java如何遍歷對(duì)象中的所有屬性(字段)和類型

    java如何遍歷對(duì)象中的所有屬性(字段)和類型

    這篇文章主要介紹了java如何遍歷對(duì)象中的所有屬性(字段)和類型問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • java集合與數(shù)組的相同點(diǎn)和不同點(diǎn)

    java集合與數(shù)組的相同點(diǎn)和不同點(diǎn)

    今天小編就為大家分享一篇關(guān)于java集合與數(shù)組的相同點(diǎn)和不同點(diǎn),小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-04-04
  • iReport簡單使用方法圖文教程

    iReport簡單使用方法圖文教程

    iReport是一個(gè)能夠創(chuàng)建復(fù)雜報(bào)表的開源項(xiàng)目,它100%使用Java語言編寫,是目前全球最為流行的開源報(bào)表設(shè)計(jì)器,由于它豐富的圖形界面,你能夠很快的創(chuàng)建出任何一種你想要的報(bào)表
    2021-10-10
  • Java中JFinal框架動(dòng)態(tài)切換數(shù)據(jù)庫的方法

    Java中JFinal框架動(dòng)態(tài)切換數(shù)據(jù)庫的方法

    這篇文章主要介紹了Java中JFinal框架動(dòng)態(tài)切換數(shù)據(jù)庫的方法,本文通過兩種方法結(jié)合示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-03-03
  • Java transient 關(guān)鍵字詳解及實(shí)例代碼

    Java transient 關(guān)鍵字詳解及實(shí)例代碼

    本文章向大家介紹Java transient關(guān)鍵字的使用方法和實(shí)例,包括的知識(shí)點(diǎn)有transient的作用、transient使用小結(jié)、transient使用細(xì)節(jié),需要的朋友可以參考一下
    2016-12-12
  • 如何使用Mockito調(diào)用靜態(tài)方法和void方法

    如何使用Mockito調(diào)用靜態(tài)方法和void方法

    這篇文章主要介紹了如何使用Mockito調(diào)用靜態(tài)方法和void方法的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • SpringCloud的Config配置中心詳解

    SpringCloud的Config配置中心詳解

    這篇文章主要介紹了SpringCloud的Config配置中心詳解,SpringCloud Config為微服務(wù)架構(gòu)中的微服務(wù)提供集中化的外部配置支持,配置服務(wù)器為各個(gè)不同微服務(wù)應(yīng)用的所有環(huán)境提供了一個(gè)中心化的外部配置,需要的朋友可以參考下
    2023-07-07
  • java中Struts2 的文件上傳和下載示例

    java中Struts2 的文件上傳和下載示例

    這篇文章主要介紹了java中Struts2 的文件上傳和下載示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。
    2016-12-12

最新評(píng)論