定義這個(gè)注釋規(guī)范的目的是讓項(xiàng)目中所有的文檔都看起來(lái)像一個(gè)人寫(xiě)的,增加可讀性,減少項(xiàng)目組中因?yàn)閾Q人而帶來(lái)的損失。(這些規(guī)范并不是一定要絕對(duì)遵守,但是一定要讓程序有良好的可讀性),。
Java 的語(yǔ)法與 C++ 及為相似,那么,你知道 Java 的注釋有幾種嗎?是兩種?
// 注釋一行
/* ...注釋若干行... */
不完全對(duì),除了以上兩種之外,還有第三種,文檔注釋:
/** ...注釋若干行,并寫(xiě)入 javadoc 文檔... */
- 注釋要簡(jiǎn)單明了,。String userName = null; //用戶(hù)名
- 邊寫(xiě)代碼邊注釋,修改代碼同時(shí)修改相應(yīng)的注釋,以保證注釋與代碼的一致性。
- 在必要的地方注釋,注釋量要適中,。注釋的內(nèi)容要清楚,、明了,含義準(zhǔn)確,防止注釋二義性。保持注釋與其描述的代碼相鄰,即注釋的就近原則,。
- 對(duì)代碼的注釋?xiě)?yīng)放在其上方相鄰位置,不可放在下面,。對(duì)數(shù)據(jù)結(jié)構(gòu)的注釋?xiě)?yīng)放在其上方相鄰位置,不可放在下面;對(duì)結(jié)構(gòu)中的每個(gè)域的注釋?xiě)?yīng)放在此域的右方;
- 同一結(jié)構(gòu)中不同域的注釋要對(duì)齊。
- 變量,、常量的注釋?xiě)?yīng)放在其上方相鄰位置或右方,。
- 全局變量要有較詳細(xì)的注釋,包括對(duì)其功能、取值范圍,、哪些函數(shù)或過(guò)程存取它以及存取時(shí)注意事項(xiàng)等的說(shuō)明,。
- 在每個(gè)源文件的頭部要有必要的注釋信息,包括:文件名;版本號(hào);作者;生成日期;模塊功能描述(如功能、主要算法,、內(nèi)部各部分之間的關(guān)系,、該文件與其它文件關(guān)系等);主要函數(shù)或過(guò)程清單及本文件歷史修改記錄等。
/**
???*?Copy?Right?Information???:?Neusoft?IIT
???*?Project????????????????????????:?eTrain
???*?JDK?version?used???????????:?jdk1.3.1
???*?Comments??????????????????:?config?path
???*?Version???????????????????????:?1.01
???*?Modification?history?????:2003.5.1
???*?Sr?Date???Modified?By???Why?&?What?is?modified
???*?1.?2003.5.2?Kevin?Gao?????new
???**/
9.在每個(gè)函數(shù)或過(guò)程的前面要有必要的注釋信息,包括:函數(shù)或過(guò)程名稱(chēng);功能描述;輸入,、輸出及返回值說(shuō)明;調(diào)用關(guān)系及被調(diào)用關(guān)系說(shuō)明等
?/**
??????*?Description?:checkout?提款
??????*?@param?Hashtable?cart?info
??????*?@param?OrderBean?order?info
??????*?@return?String
??????*/
?????public?String?checkout(Hashtable?htCart,?OrderBean?orderBean)?throws?Exception????{?}
10.javadoc注釋標(biāo)簽語(yǔ)法
@author 對(duì)類(lèi)的說(shuō)明 標(biāo)明開(kāi)發(fā)該類(lèi)模塊的作者
@version 對(duì)類(lèi)的說(shuō)明 標(biāo)明該類(lèi)模塊的版本
@see 對(duì)類(lèi),、屬性,、方法的說(shuō)明 參考轉(zhuǎn)向,也就是相關(guān)主題
@param 對(duì)方法的說(shuō)明 對(duì)方法中某參數(shù)的說(shuō)明
@return 對(duì)方法的說(shuō)明 對(duì)方法返回值的說(shuō)明
@exception 對(duì)方法的說(shuō)明 對(duì)方法可能拋出的異常進(jìn)行說(shuō)明