編程規約之代碼格式

(三)代碼格式 
1. 【強制】大括號的使用約定。如果是大括號內爲空,則簡潔地寫成{}即可,不需要換行;如果
是非空代碼塊則:
1) 左大括號前不換行。
2) 左大括號後換行。
3) 右大括號前換行。
4) 右大括號後還有 else 等代碼則不換行;表示終止的右大括號後必須換行。
2. 【強制】左小括號和字符之間不出現空格;同樣,右小括號和字符之間也不出現空格;而左大
括號前需要空格。詳見第 5 條下方正例提示。
反例:if (空格 a == b 空格)
3. 【強制】if/for/while/switch/do 等保留字與括號之間都必須加空格。
4. 【強制】任何二目、三目運算符的左右兩邊都需要加一個空格。
說明:運算符包括賦值運算符=、邏輯運算符&&、加減乘除符號等。
5. 【強制】採用 4 個空格縮進,禁止使用 tab 字符。
說明:如果使用 tab 縮進,必須設置 1 個 tab 爲 4 個空格。IDEA 設置 tab 爲 4 個空格時,
請勿勾選 Use tab character;而在 eclipse 中,必須勾選 insert spaces for tabs。
阿里巴巴 Java 開發手冊
 5/38
正例: (涉及 1-5 點)
public static void main(String[] args) { 
// 縮進 4 個空格 
String say = "hello"; 
// 運算符的左右必須有一個空格 
int flag = 0; 
// 關鍵詞 if 與括號之間必須有一個空格,括號內的 f 與左括號,0 與右括號不需要空格 
if (flag == 0) { 
System.out.println(say); 

 
// 左大括號前加空格且不換行;左大括號後換行 
if (flag == 1) { 
System.out.println("world"); 
// 右大括號前換行,右大括號後有 else,不用換行 
} else { 
System.out.println("ok"); 
// 在右大括號後直接結束,則必須換行 


6. 【強制】註釋的雙斜線與註釋內容之間有且僅有一個空格。
正例:
// 這是示例註釋,請注意在雙斜線之後有一個空格
String ygb = new String();
7. 【強制】單行字符數限制不超過 120 個,超出需要換行,換行時遵循如下原則:
1) 第二行相對第一行縮進 4 個空格,從第三行開始,不再繼續縮進,參考示例。
2) 運算符與下文一起換行。
3) 方法調用的點符號與下文一起換行。
4) 方法調用中的多個參數需要換行時,在逗號後進行。
5) 在括號前不要換行,見反例。
正例:
StringBuffer sb = new StringBuffer(); 
// 超過 120 個字符的情況下,換行縮進 4 個空格,點號和方法名稱一起換行
sb.append("zi").append("xin")... 
.append("huang")... 
.append("huang")... 
.append("huang");
反例:
StringBuffer sb = new StringBuffer(); 
// 超過 120 個字符的情況下,不要在括號前換行
sb.append("zi").append("xin")...append 
("huang"); 
// 參數很多的方法調用可能超過 120 個字符,不要在逗號前換行
method(args1, args2, args3, ... 
, argsX); 

8. 【強制】方法參數在定義和傳入時,多個參數逗號後邊必須加空格。
正例:下例中實參的 args1,後邊必須要有一個空格。
method(args1, args2, args3); 
9. 【強制】IDE 的 text file encoding 設置爲 UTF-8; IDE 中文件的換行符使用 Unix 格式,
不要使用 Windows 格式。
10. 【推薦】單個方法的總行數不超過 80 行。
說明:包括方法簽名、結束右大括號、方法內代碼、註釋、空行、回車及任何不可見字符的總
行數不超過 80 行。
正例:代碼邏輯分清紅花和綠葉,個性和共性,綠葉邏輯單獨出來成爲額外方法,使主幹代碼
更加清晰;共性邏輯抽取成爲共性方法,便於複用和維護。
11. 【推薦】沒有必要增加若干空格來使某一行的字符與上一行對應位置的字符對齊。
正例:
int one = 1; 
long two = 2L; 
float three = 3F; 
StringBuffer sb = new StringBuffer(); 
說明:增加 sb 這個變量,如果需要對齊,則給 a、b、c 都要增加幾個空格,在變量比較多的
情況下,是非常累贅的事情。
12. 【推薦】不同邏輯、不同語義、不同業務的代碼之間插入一個空行分隔開來以提升可讀性。
說明:任何情形,沒有必要插入多個空行進行隔開。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章