Java的括号使用规则_java编码规范
#文件名
源文件以其最頂層的類名來(lái)命名,大小寫(xiě)敏感,文件擴(kuò)展名為.java。
#編碼方式
UTF-8
#結(jié)構(gòu)
一個(gè)源文件包含(按順序地):
許可證或版權(quán)信息(如有需要)
package語(yǔ)句
import語(yǔ)句
一個(gè)頂級(jí)類(只有一個(gè))
***以上每個(gè)部分之間用一個(gè)空行隔開(kāi)。
#package
(即package語(yǔ)句寫(xiě)在一行里)
#import
不要出現(xiàn)類似這樣的import語(yǔ)句:import java.util.*;
(每個(gè)import語(yǔ)句獨(dú)立成行)
import語(yǔ)句可分為以下幾組,按照這個(gè)順序,每組由一個(gè)空行分隔:
所有的靜態(tài)導(dǎo)入獨(dú)立成組
com.google imports(僅當(dāng)這個(gè)源文件是在com.google包下)
第三方的包。每個(gè)頂級(jí)包為一組,字典序。例如:android, com, junit, org, sun
java imports
javax imports
組內(nèi)不空行,按字典序排列。
#類聲明
3.4.1 只有一個(gè)頂級(jí)類聲明
每個(gè)頂級(jí)類都在一個(gè)與它同名的源文件中(當(dāng)然,還包含.java后綴)。
例外:package-info.java,該文件中可沒(méi)有package-info類。
3.4.2 類成員順序
類的成員順序?qū)σ讓W(xué)性有很大的影響,但這也不存在唯一的通用法則。不同的類對(duì)成員的排序可能是不同的。 最重要的一點(diǎn),每個(gè)類應(yīng)該以某種邏輯去排序它的成員,維護(hù)者應(yīng)該要能解釋這種排序邏輯。比如, 新的方法不能總是習(xí)慣性地添加到類的結(jié)尾,因?yàn)檫@樣就是按時(shí)間順序而非某種邏輯來(lái)排序的。
3.4.2.1 重載:永不分離
當(dāng)一個(gè)類有多個(gè)構(gòu)造函數(shù),或是多個(gè)同名方法,這些函數(shù)/方法應(yīng)該按順序出現(xiàn)在一起,中間不要放進(jìn)其它函數(shù)/方法。
#大括號(hào)
4.1.1 使用大括號(hào)(即使是可選的)
大括號(hào)與if, else, for, do, while語(yǔ)句一起使用,即使只有一條語(yǔ)句(或是空),也應(yīng)該把大括號(hào)寫(xiě)上。
4.1.2 非空塊:K & R 風(fēng)格
對(duì)于非空塊和塊狀結(jié)構(gòu),大括號(hào)遵循Kernighan和Ritchie風(fēng)格 (Egyptian brackets):
左大括號(hào)前不換行
左大括號(hào)后換行
右大括號(hào)前換行
如果右大括號(hào)是一個(gè)語(yǔ)句、函數(shù)體或類的終止,則右大括號(hào)后換行; 否則不換行。例如,如果右大括號(hào)后面是else或逗號(hào),則不換行。
示例:
return new MyClass() {
@Override public void method() {
if (condition()) {
try {
something();
} catch (ProblemException e) {
recover();
}
}
}
};
總結(jié)
以上是生活随笔為你收集整理的Java的括号使用规则_java编码规范的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 2008R2Win7管理九DNS冗余和恢
- 下一篇: 关于SqlBulkCopy SQL批量导