資源描述:
《java語言編碼規(guī)范》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、Java語言編碼規(guī)范原文出處:http://java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html,譯文出處:http://morningspace.51.net/,moyingzz@etang.com?1介紹(Introduction)1.1為什么要有編碼規(guī)范編碼規(guī)范對于程序員而言尤為重要,有以下幾個原因:-一個軟件的生命周期中,80%的花費在于維護-幾乎沒有任何一個軟件,在其整個生命周期中,均由最初的開發(fā)人員來維護-編碼規(guī)范可以改善軟件的可讀性,可以讓程序員盡快而徹底地理解新的代碼-如果你將源碼作為產(chǎn)品發(fā)布,就需
2、要確任它是否被很好的打包并且清晰無誤,一如你已構(gòu)建的其它任何產(chǎn)品為了執(zhí)行規(guī)范,每個軟件開發(fā)人員必須一致遵守編碼規(guī)范。?1.2版權(quán)聲明本文檔反映的是SunMicroSystems公司,Java語言規(guī)范中的編碼標(biāo)準(zhǔn)部分。主要貢獻者包括:PeterKing,PatrickNaughton,MikeDeMoney,JonniKanerva,KathyWalrath以及ScottHommel。本文檔現(xiàn)由ScottHommel維護,有關(guān)評論意見請發(fā)至shommel@eng.sun.com?2.文件名這部分列出了常用的文件名及其后綴。?2.1文件后綴Java程序使用下列文件后綴文
3、件類別文件后綴Java源文件.javaJava字節(jié)碼文件.class2.2常用文件名Java程序使用下列文件后綴文件類別文件后綴Java源文件.javaJava字節(jié)碼文件.class?3.文件組織一個文件由被空行分割而成的段落以及標(biāo)識每個段落的可選注釋共同組成。超過2000行的程序難以閱讀,應(yīng)該盡量避免。"Java源文件范例"提供了一個布局合理的Java程序范例。?3.1jAVA源文件每個Java源文件都包含一個單一的公共類或接口。若私有類和接口與一個公共類相關(guān)聯(lián),可以將它們和公共類放入同一個源文件。公共類必須是這個文件中的第一個類或接口。Java源文件還遵循以下規(guī)
4、則:-開頭注釋(參見"開頭注釋")-包和引入語句(參見"包和引入語句")-類和接口聲明(參見"類和接口聲明")?3.1.1開頭注釋所有的源文件都應(yīng)該在開頭有一個C語言風(fēng)格的注釋,其中列出類名、版本信息、日期和版權(quán)聲明:/**Classname**Versioninformation**Date**Copyrightnotice*/?3.1.2包和引入語句在多數(shù)Java源文件中,第一個非注釋行是包語句。在它之后可以跟引入語句。例如:packagejava.awt;importjava.awt.peer.CanvasPeer;?3.1.3類和接口說明下表描述了類和接口聲
5、明的各個部分以及它們出現(xiàn)的先后次序。參見"Java源文件范例"中一個包含注釋的例子。?類/接口聲明的各部分注解1類/接口文檔注釋(/**……*/)該注釋中所需包含的信息,參見"文檔注釋"2類或接口的聲明?3類/接口實現(xiàn)的注釋(/*……*/)如果有必要的話該注釋應(yīng)包含任何有關(guān)整個類或接口的信息,而這些信息又不適合作為類/接口文檔注釋。4類的(靜態(tài))變量首先是類的公共變量,隨后是保護變量,再后是包一級別的變量(沒有訪問修飾符,accessmodifier),最后是私有變量。5實例變量首先是公共級別的,隨后是保護級別的,再后是包一級別的(沒有訪問修飾符),最后是私有級別的
6、。6構(gòu)造器?7方法這些方法應(yīng)該按功能,而非作用域或訪問權(quán)限,分組。例如,一個私有的類方法可以置于兩個公有的實例方法之間。其目的是為了更便于閱讀和理解代碼。?4.縮進排版4個空格常被作為縮進排版的一個單位。縮進的確切解釋并未詳細(xì)指定(空格vs.制表符)。一個制表符等于8個空格(而非4個)。?4.1行長度盡量避免一行的長度超過80個字符,因為很多終端和工具不能很好處理之。注意:用于文檔中的例子應(yīng)該使用更短的行長,長度一般不超過70個字符。?4.2換行當(dāng)一個表達(dá)式無法容納在一行內(nèi)時,可以依據(jù)如下一般規(guī)則斷開之:-在一個逗號后面斷開-在一個操作符前面斷開-寧可選擇較高級別(
7、higher-level)的斷開,而非較低級別(lower-level)的斷開-新的一行應(yīng)該與上一行同一級別表達(dá)式的開頭處對齊-如果以上規(guī)則導(dǎo)致你的代碼混亂或者使你的代碼都堆擠在右邊,那就代之以縮進8個空格。以下是斷開方法調(diào)用的一些例子:someMethod(longExpression1,longExpression2,longExpression3,longExpression4,longExpression5);var=someMethod1(longExpression1,someMethod2(longExpression2,longExpressio