JAVA語言的部分編碼規(guī)范
編碼規(guī)范可以改善軟件的可讀性,可以讓程序員盡快而徹底地理解新的代碼
如果你將源碼作為產(chǎn)品發(fā)布,就需要確任它是否被很好的打包并且清晰無誤。
-
開頭注釋(Beginning Comments)
所有的源文件都應(yīng)該在開頭有一個C語言風(fēng)格的注釋,其中列出類名、版本信息、日期和版權(quán)聲明:
-
包和引入語句(Package and Import Statements)
在多數(shù)Java源文件中,第一個非注釋行是包語句。在它之后可以跟引入語句。例如:
package java.awt;
import java.awt.peer.CanvasPeer;
-
類和接口聲明(Class and Interface Declarations)
下表描述了類和接口聲明的各個部分以及它們出現(xiàn)的先后次序。參見"Java源文件范例"中一個包含注釋的例子。
|
類/接口聲明的各部分 |
注解 |
1 |
類/接口文檔注釋(/**……*/) |
該注釋中所需包含的信息,參見"文檔注釋" |
2 |
類或接口的聲明 |
|
3 |
類/接口實現(xiàn)的注釋(/*……*/)如果有必要的話 |
該注釋應(yīng)包含任何有關(guān)整個類或接口的信息,而這些信息又不適合作為類/接口文檔注釋。 |
4 |
類的(靜態(tài))變量 |
首先是類的公共變量,隨后是保護變量,再后是包一級別的變量(沒有訪問修飾符,access modifier),最后是私有變量。 |
5 |
實例變量 |
首先是公共級別的,隨后是保護級別的,再后是包一級別的(沒有訪問修飾符),最后是私有級別的。 |
6 |
構(gòu)造器 |
|
7 |
方法 |
這些方法應(yīng)該按功能,而非作用域或訪問權(quán)限,分組。例如,一個私有的類方法可以置于兩個公有的實例方法之間。其目的是為了更便于閱讀和理解代碼。 |
-
注釋(Comments)
Java程序有兩類注釋:實現(xiàn)注釋(implementation comments)和文檔注釋(document comments)。實現(xiàn)注釋是那些在C++中見過的,使用/*...*/和//界定的注釋。文檔注釋(被稱為"doc comments")是Java獨有的,并由/**...*/界定。文檔注釋可以通過javadoc工具轉(zhuǎn)換成HTML文件。
實現(xiàn)注釋用以注釋代碼或者實現(xiàn)細節(jié)。文檔注釋從實現(xiàn)自由(implementation-free)的角度描述代碼的規(guī)范。它可以被那些手頭沒有源碼的開發(fā)人員讀懂。
注釋應(yīng)被用來給出代碼的總括,并提供代碼自身沒有提供的附加信息。注釋應(yīng)該僅包含與閱讀和理解程序有關(guān)的信息。例如,相應(yīng)的包如何被建立或位于哪個目錄下之類的信息不應(yīng)包括在注釋中。
在注釋里,對設(shè)計決策中重要的或者不是顯而易見的地方進行說明是可以的,但應(yīng)避免提供代碼中己清晰表達出來的重復(fù)信息。多余的的注釋很容易過時。通常應(yīng)避免那些代碼更新就可能過時的注釋。
注意:頻繁的注釋有時反映出代碼的低質(zhì)量。當(dāng)你覺得被迫要加注釋的時候,考慮一下重寫代碼使其更清晰。
-
命名規(guī)范(Naming Conventions)
命名規(guī)范使程序更易讀,從而更易于理解。它們也可以提供一些有關(guān)標(biāo)識符功能的信息,以助于理解代碼,例如,不論它是一個常量,包,還是類。
標(biāo)識符類型 |
命名規(guī)則 |
例子 |
包(Packages) |
一個唯一包名的前綴總是全部小寫的ASCII字母并且是一個頂級域名,通常是com,edu,gov,mil,net,org,或1981年ISO 3166標(biāo)準(zhǔn)所指定的標(biāo)識國家的英文雙字符代碼。包名的后續(xù)部分根據(jù)不同機構(gòu)各自內(nèi)部的命名規(guī)范而不盡相同。這類命名規(guī)范可能以特定目錄名的組成來區(qū)分部門(department),項目(project),機器(machine),或注冊名(login names)。 |
com.sun.eng |
類(Classes) |
命名規(guī)則:類名是個一名詞,采用大小寫混合的方式,每個單詞的首字母大寫。盡量使你的類名簡潔而富于描述。使用完整單詞,避免縮寫詞(除非該縮寫詞被更廣泛使用,像URL,HTML) |
class Raster; |
接口(Interfaces) |
命名規(guī)則:大小寫規(guī)則與類名相似 |
interface RasterDelegate; |
方法(Methods) |
方法名是一個動詞,采用大小寫混合的方式,第一個單詞的首字母小寫,其后單詞的首字母大寫。 |
run(); |
變量(Variables) |
除了變量名外,所有實例,包括類,類常量,均采用大小寫混合的方式,第一個單詞的首字母小寫,其后單詞的首字母大寫。變量名不應(yīng)以下劃線或美元符號開頭,盡管這在語法上是允許的。 |
char c; |
實例變量(Instance Variables) |
大小寫規(guī)則和變量名相似,除了前面需要一個下劃線 |
int _employeeId; |
常量(Constants) |
類常量和ANSI常量的聲明,應(yīng)該全部大寫,單詞間用下劃線隔開。(盡量避免ANSI常量,容易引起錯誤) |
static final int MIN_WIDTH = 4; |
posted on 2008-06-04 11:02 relaxqu 閱讀(121) 評論(0) 編輯 收藏 引用 所屬分類: JAVA