1.【強制】大括號的使用約定。如果是大括號內為空,則簡潔地寫成{}即可,不需要換行;如果是非空代碼塊則:
1) 左大括號前不換行。
2) 左大括號后換行。
3) 右大括號前換行。
4) 右大括號后還有 else 等代碼則不換行;表示終止右大括號后必須換行。
2.【強制】 左括號和后一個字符之間不出現空格;同樣,右括號和前一個字符之間也不出現空格。
3.【強制】縮進采用 tab 字符,禁止使用4 個空格 。
4.【強制】單行字符數限制不超過 120 個,超出需要換行,換行時遵循如下原則:
1)第二行相對第一行縮進 1個TAB,從第三行開始,不再繼續縮進,參考示例。
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);
5.【強制】定義函數時,函數各個參數之間使用逗號空格分隔(, ),函數的可選參數必須放到必選參數的后面。調用函數的時候,各個參數之間也要使用逗號空格分隔(, )。函數內部如使用全局變量如GET、POST數據時,請使用參數將該數據傳遞過來,即函數內部的變量全部來源于函數的參數,這樣調用函數時就不會出現函數內部某個變量沒有定義的情況。
正例:
下例中實參的'a'后邊必須要有且僅有一個空格。
method('a', 'b', 'c');
6.【強制】IDE 的 text file encoding 設置為 UTF-8; IDE 中文件的換行符使用 Unix 格式,不要使用 windows 格式。
7.【推薦】沒有必要增加若干空格來使某一行的字符與上一行的相應字符對齊。
正例:
int a = 3;
long b = 4L;
float c = 5F;
StringBuffer sb = new StringBuffer();
說明:增加 sb 這個變量,如果需要對齊,則給 a、b、c 都要增加幾個空格,在變量比較多的情況下,是一種累贅的事情。
8.【推薦】方法體內的執行語句組、變量的定義語句組、不同的業務邏輯之間或者不同的語義之間插入一個空行。相同業務邏輯和語義之間不需要插入空行。
說明:沒有必要插入多行空格進行隔開。