亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Java > 正文

Java經驗點滴:類注釋文檔編寫方法

2020-01-31 16:51:57
字體:
來源:轉載
供稿:網友
文章來源:csdn 作者:chensheng913

對于Java語言,最體貼的一項設計就是它并沒有打算讓人們為了寫程序而寫程序――人們也需要考慮程序的文檔化問題。對于程序的文檔化,最大的問題莫過于對文檔的維護。若文檔與代碼分離,那么每次改變代碼后都要改變文檔,這無疑會變成相當麻煩的一件事情。


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

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

  2 具體語法

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


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

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

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


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

*/

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

*
項目一
*
項目二
*
項目三
*

*/

注意在文檔注釋中,位于一行最開頭的星號會被javadoc丟棄。同時丟棄的還有前導空格。javadoc會對所有內容進行格式化,使其與標準的文檔外觀相符。不要將

  這樣的標題當作嵌入HTML使用,因為javadoc會插入自己的標題,我們給出的標題會與之沖撞。
所有類型的注釋文檔――類、變量和方法――都支持嵌入HTML。

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

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

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

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

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

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

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

  1. @param
  格式如下:
  @param 參數名 說明
  其中,“參數名”是指參數列表內的標識符,而“說明”代表一些可延續到后續行內的說明文字。一旦遇到一個新文檔標記,就認為前一個說明結束。可使用任意數量的說明,每個參數一個。

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

  3. @exception
  有關“違例”(Exception)的詳細情況,我們會在第9章講述。簡言之,它們是一些特殊的對象,若某個方法失敗,就可將它們“扔出”對象。調用一個方法時,盡管只有一個違例對象出現,但一些特殊的方法也許能產生任意數量的、不同類型的違例。所有這些違例都需要說明。所以,違例標記的格式如下:
  @exception 完整類名 說明
  其中,“完整類名”明確指定了一個違例類的名字,它是在其他某個地方定義好的。而“說明”(同樣可以延續到下面的行)告訴我們為什么這種特殊類型的違例會在方法調用中出現。

  4. @deprecated
  這是Java 1.1的新特性。該標記用于指出一些舊功能已由改進過的新功能取代。該標記的作用是建議用戶不必再使用一種特定的功能,因為未來改版時可能摒棄這一功能。若將一個方法標記為@deprecated,則使用該方法時會收到編譯器的警告。 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产成人精品午夜| 欧美高清视频一区二区| 91亚洲va在线va天堂va国| 中文字幕国内精品| 欧美电影免费观看电视剧大全| 国产精品视频导航| 欧美日韩人人澡狠狠躁视频| 国产97在线|亚洲| 97免费视频在线| 国产精品人成电影在线观看| www.欧美精品一二三区| 欧美电影在线免费观看网站| 精品亚洲aⅴ在线观看| 18一19gay欧美视频网站| 久久精品99久久久久久久久| 国产一区红桃视频| 成人黄色免费片| 亚洲图中文字幕| 久色乳综合思思在线视频| 日韩av中文字幕在线| 欧美中文字幕在线播放| 亚洲精品国产免费| 亚洲国产精品久久精品怡红院| 精品国产自在精品国产浪潮| 亚洲美女自拍视频| 91亚洲精华国产精华| 久久艳片www.17c.com| 日韩精品中文在线观看| 久久亚洲综合国产精品99麻豆精品福利| 欧美肥婆姓交大片| 92国产精品视频| 日本不卡视频在线播放| 欧美高清第一页| 国产午夜精品理论片a级探花| 欧美日韩国产麻豆| 亚洲精品白浆高清久久久久久| 亚洲色图17p| 亚洲午夜女主播在线直播| 亚洲国产一区二区三区在线观看| 国产精品91在线观看| 日韩中文字幕在线精品| 亚洲综合大片69999| 国产精品av在线播放| 国产精品观看在线亚洲人成网| 日本亚洲欧美三级| 日韩欧美在线一区| 日韩网站免费观看高清| 国产成人自拍视频在线观看| 91亚洲国产成人久久精品网站| 欧美xxxx综合视频| 精品国产91久久久| 国产精品视频久久| 国模视频一区二区三区| 91精品视频大全| 欧美电影免费观看高清完整| 色偷偷偷综合中文字幕;dd| 欧美日本高清一区| 日韩中文在线不卡| 亚洲欧美日韩精品久久| 中文字幕久久精品| 国产精品嫩草视频| 成人黄色影片在线| 2025国产精品视频| 亚洲欧美精品中文字幕在线| 日韩乱码在线视频| 亚洲人成电影网站色www| 亚洲乱码国产乱码精品精天堂| 中文在线资源观看视频网站免费不卡| 日韩电视剧在线观看免费网站| 亚洲a在线播放| 国产国语videosex另类| 国产成人一区二区三区| 中文字幕成人在线| 91精品国产91久久久久久| 日韩乱码在线视频| 久久亚洲精品成人| 在线精品国产欧美| 亚洲一区二区自拍| 久久精品福利视频| 不卡中文字幕av| 91干在线观看| 九九热在线精品视频| 国产美女直播视频一区| 国产精品r级在线| 91免费精品国偷自产在线| 国产精品视频网站| 亚洲欧美日韩一区二区在线| 国产精品99久久99久久久二8| 亚洲精品国产拍免费91在线| 国产日韩精品电影| 欧美精品福利在线| 亚洲欧美中文日韩在线| 欧美性猛交xxxx久久久| 欧美成人午夜剧场免费观看| 欧美精品videosex极品1| 欧美另类精品xxxx孕妇| 国产成人综合精品| 亚洲欧洲视频在线| 亚洲一区二区中文| 亚洲va欧美va国产综合久久| 欧美成人一区二区三区电影| 91成人天堂久久成人| xxxxx91麻豆| 欧美电影免费观看网站| 欧美性69xxxx肥| 国产精品美女视频网站| 亚洲最大成人在线| 欧美激情一区二区三区高清视频| 国产精品一久久香蕉国产线看观看| 成人av色在线观看| 欧美性猛交xxxx久久久| 国产成人av网址| 国产在线观看一区二区三区| 国产做受69高潮| 欧美日韩成人精品| 日韩不卡在线观看| 亚洲欧美日韩国产中文| 欧美怡红院视频一区二区三区| 精品久久久久久久久国产字幕| 成人信息集中地欧美| 亚洲色图第三页| 日韩免费在线观看视频| 色哟哟入口国产精品| 国产在线日韩在线| 亚洲视频在线视频| 亚洲视频欧洲视频| 欧美性在线观看| 狠狠躁夜夜躁久久躁别揉| 日韩av在线一区二区| 日韩免费在线免费观看| 久久久久久网站| 国产午夜精品视频免费不卡69堂| 精品亚洲永久免费精品| 亚洲综合国产精品| 国产a∨精品一区二区三区不卡| 亚洲精品乱码久久久久久金桔影视| 久久99久久亚洲国产| 亚洲缚视频在线观看| 亚洲欧美日韩一区二区三区在线| 国模极品一区二区三区| 亚洲第一福利网| 欧美视频免费在线| 亚洲美女福利视频网站| 麻豆精品精华液| 欧美精品久久久久a| 在线成人激情黄色| 欧美日韩激情视频8区| 日本电影亚洲天堂| 国产91对白在线播放| 亚洲第一区中文99精品| 亚洲欧洲美洲在线综合| 欧美国产日韩一区二区三区| 精品国内产的精品视频在线观看| 亚洲专区中文字幕| 韩国精品久久久999| 国产丝袜一区二区三区| 91成人精品网站| 欧美日韩国产综合视频在线观看中文| 欧美亚洲激情在线| 国产乱肥老妇国产一区二| 日韩精品一区二区三区第95| 亚洲一区999| 美女av一区二区三区| 久久天天躁夜夜躁狠狠躁2022|