對(duì)于軟件工程來說代碼的編寫并不是唯一重要的事情,。文檔編寫的重要性不亞于程序代碼本身。如果代碼與文檔是分離的,,那么在每次修改代碼時(shí),,都需要修改相應(yīng)的文檔就會(huì)是一件相當(dāng)麻煩的事情。所以我們通過javadoc將代碼同文檔“連接”起來,。 Javadoc是什么,? javadoc是Sun公司提供的一個(gè)技術(shù),它從程序源代碼中抽取類,、方法,、成員等注釋形成一個(gè)和源代碼配套的API幫助文檔。也就是說,,只要在編寫程序時(shí)以一套特定的標(biāo)簽作注釋,,在程序編寫完成后,通過Javadoc就可以同時(shí)形式程序的開發(fā)文檔了,。 Javadoc輸出的是一些HTML文件,我們可以通過WEB瀏覽器來查看它,。 Javadoc的語法: 所有Javadoc都只能源于/**開始和*/結(jié)束,。使用javadoc有二種方式,一種是嵌入HTML另一種是使用文檔標(biāo)簽,。所謂文檔標(biāo)簽就是一些以“@”開頭的命令,,且“@”要置于注釋行的最前面。而“行內(nèi)文檔標(biāo)簽”則可以出現(xiàn)在Javadoc注釋中的任何地方,,它們也是以“@”字符開頭,,但要括在共括號(hào)內(nèi)。 Javadoc只能為public或者protected成員進(jìn)行文檔注釋,。private和包內(nèi)訪問的成員的注釋會(huì)被忽略掉,。這樣做是有道理的,,因?yàn)橹挥衟ublic和protected成員才能在文件之外被使用,這也體現(xiàn)了封裝性的優(yōu)點(diǎn),。 嵌入HTML: Javadoc將HTML代碼嵌入到所生成的HTML文件中,。這樣能充分利用HTML的功能。比如: /** *<b> *this is my test program; *</b> */ 但一般我們不要在HTML里使用標(biāo)題,,如<h1><hr>,,因?yàn)镴avadoc會(huì)插入自己的標(biāo)題,我們的標(biāo)題可能會(huì)干擾它,。 一些有用的標(biāo)簽: 1)@see:引用其它類的文檔,,相當(dāng)于超鏈接,Javadoc會(huì)在其生成的HTML文件中,,將@see標(biāo)簽鏈到其他的文檔 @see classname 這樣在生成的文檔中會(huì)出現(xiàn)"See Also"的超鏈蛸,。但是Javadoc不去檢查你的超鏈接是否有效。 2){@link package.class#member label} 與@See的功能一樣,,只是用label作主超鏈接,,而不是用"see also" 3){@docRoot}:標(biāo)簽產(chǎn)生 到文檔根目錄的相對(duì)路徑,用于文檔樹頁(yè)面的顯式超鏈接 4){@inheritDoc}:標(biāo)簽從當(dāng)前這個(gè)類的最直接的基類中繼承相關(guān)文檔到當(dāng)前的文檔注釋中,。 5)@version:使用方法為@version 2.2.1.2... 2.2.1.2...是我們作的版本說明信息 6)@author:使用方法為 @author PowerFedora [email protected] 也就是說我們可以在@author后加上作者名字,,email等聯(lián)系方式 7)@since:這個(gè)標(biāo)簽允許你指定程序最早使用的版本。比如我們看JDK Document里的每個(gè)類最后都會(huì)說明從JDK哪個(gè)版本開始啟用,。 8)@param:@param name 用于輸入客戶的姓名 @param后面是方法的參數(shù),,以及相應(yīng)的說明 我們可以使用任意數(shù)量的此標(biāo)簽,每個(gè)參數(shù)都可以有這樣一個(gè)標(biāo)簽 9)@return this is description @return后面是描述返回值的含義,,可以延續(xù)幾行,。 10)@throws fully-qualified-class-name description fully-qualified-class-name為異常類的完整名字,而description告訴你為什么此異常會(huì)在方法中調(diào)用出現(xiàn),。 11)@deprecated:用于指出一些舊特性已由改進(jìn)的新特性所取代,,建議用戶不要再使用舊特性。 接下來我們用一個(gè)代碼將上述所有的標(biāo)簽都使用起來,,看一下效果:
//: test Javadoc,JavaCode.java import java.util.*;
/** 這是一個(gè)為了測(cè)試Javadoc而專門寫的類 * 功能是打印字符串 * @author PowerFedora * @author [email protected] * @version 1.0 */ public class JavaCode { /** 這里的main函數(shù),,作為java程序的入口 * @param 參數(shù)為一個(gè)String對(duì)象數(shù)組 * @return 沒有返回值的內(nèi)容 * @exception exceptions 沒有異常被拋出 */ public static void main(String[] args){ String a = "中華人民共和國(guó)"; System.out.print(a); } } ///:~ 值得一題的是,如果你使用eclipse的話,,完全不需要背這些標(biāo)簽,。當(dāng)我們?cè)谛枰⑨尩牡胤酱蛏?**之后,再打@符號(hào)eclipse會(huì)自動(dòng)顯示所支持的標(biāo)簽供我們選擇,。 同樣在生成HTML文檔時(shí)我們也可以利用eclipse的export功能直接導(dǎo)出,,否則用javadoc手工來生成的話是件相當(dāng)痛苦的事情。 以下列出來javadoc支持的參數(shù): -author -bootclasspath -bottom -breakiterator -charset -classpath -d -docencoding -docfilessubdirs -doclet -docletpath -doctitle -encoding -exclude -excludedocfilessubdir -extdirs -footer -group -header -help -helpfile -J -keywords -link -linkoffline -linksource -locale -nocomment -nodeprecated -nodeprecatedlist -nohelp -noindex -nonavbar -noqualifier -nosince -notimestamp -notree -overview -package -private -protected -public -quiet -serialwarn -source -sourcepath -splitindex -stylesheetfile -subpackages -tag -taglet -tagletpath -title -use -verbose -version -windowtitle
文章出處:http://www./course/3_program/java/javajs/2008525/117789.html
|