Java 編程規(guī)范

  1. 源文件編碼格式為UTF-8

  2. ASCII水平空格字符(0x20悄窃,即空格)是源文件中唯一允許出現(xiàn)的空白字符,這意味著:所有其它字符串中的空白字符都要進行轉義。

  3. 對于具有特殊轉義序列的任何字符(\b, \t, \n, \f, \r, \“, \‘)乍炉,我們使用它的轉義序列,而不是相應的八進制(比如 \012 )或Unicode(比如 \u000a )轉義滤馍。

  4. 在使用Unicode轉義符或是一些實際的Unicode字符時岛琼,建議做些注釋給出解釋,這有助于別人閱讀和理解巢株。

    image.png

  5. 一個源文件應包含(每個部分用一個空行隔開):
    1)許可證或版權信息
    2)package語句:寫在一行上
    3)import語句:a.不要出現(xiàn)通配符槐瑞,如:import java.util.*; b.import語句不要換行 c.每組由一個空行隔開,組內(nèi)不空行
    4)一個頂級類:a.每個類應該以某種邏輯去排序它的成員 b.當一個類有多個構造函數(shù)或是多個同名方法阁苞,這些函數(shù)或方法應該按順序出現(xiàn)在一起 c.

  6. 大括號{ }a.使用大括號困檩,即使它是可選的。 b.對于非空塊和塊狀結構那槽,大括號遵循Kernighan和Ritchie風格悼沿,即左大括號前不換行,后換行骚灸;右大括號前換行糟趾,若是一個語句或函數(shù)體的終止,則后換行逢唤,否則不換行。 c.空的塊狀結構可不換行涤浇,如void doNothing() {}鳖藕;多塊語句的一部分,即使大括號內(nèi)沒內(nèi)容只锭,也要換行著恩,如if/else,try/catch/finally

  7. 每當開始一個新的塊,縮進增加2個空格,當塊結束時喉誊,縮進返回先前的縮進級別邀摆。縮進級別適用于代碼和注釋伍茄。

  8. 一行一個語句栋盹。

  9. 提取方法或局部變量可以有效解決代碼過長的問題。

  10. 自動換行的基本準則:傾向于在更高的語法級別出斷開: a.如果在非賦值運算符處斷開敷矫,那么在該符號前斷開例获,如+,它將位于下一行曹仗。 b. 如果在賦值運算符處斷開榨汤,那么在該符號后斷開,如=怎茫,它將與前面的內(nèi)容留在同一行收壕。 c. 左括號與方法名或函數(shù)名留在同一行。 d. 逗號與其前面的內(nèi)容留在一行

  11. 沒有必要使用多個連續(xù)的空行轨蛤。

  12. 單個ASCII空格出現(xiàn)在如下幾個地方: a. 分隔任何保留字與其后的左括號蜜宪,如if,for俱萍,catch b. 分隔任何保留字與其前面的右大括號端壳,如else,catch c. 任何左大括號前 d. 任何二元或三元運算符的兩側 e. 注釋的//兩邊要有空格 f. 類型和變量之間枪蘑,如List list g. 數(shù)據(jù)初始化中中括號內(nèi)的空格可選损谦,如new int[ ] {5,6}

  13. 水平對齊:通過增加可變數(shù)量的空格來使某一行的字符與上一行的相應字符對齊岳颇。雖然增加了可讀性照捡,但是后期維護工作復雜。


    image.png
  1. 變量聲明: a. 每次只聲明一個變量话侧,不要使用組合聲明栗精,如int x,y b. 在需要的時候才聲明瞻鹏,而不是在代碼塊的開頭就把變量一次性都聲明了悲立,最好在聲明時就進行初始化,或者盡快進行初始化新博。

  2. 數(shù)組初始化可寫成塊狀結構薪夕,如


    image.png
  3. 在一個switch塊內(nèi),每個語句組要么通過break赫悄,continue原献,return或拋出異常來終止馏慨,要么通過一條注釋來說明程序將繼續(xù)執(zhí)行到下一個語句組,如//fall through


    image.png
  4. 每個switch語句都包含一個default語句組姑隅,即使它什么代碼也不包含写隶。

  5. 對于多行的/*……*/注釋,后續(xù)必須從*開始讲仰,并且與前一行的*對齊慕趴。

  6. 類和成員的modifiers如果存在,則按Java語言規(guī)范中推薦的順序出現(xiàn)叮盘。public protected private abstract static final transient volatile synchronized native strictfp

20.命名規(guī)范: a. 包名全部小寫 b. 類名秩贰,接口名首字母大寫,測試類以Test結尾 c.方法名柔吼,變量名首單詞小寫毒费,其余單詞首字母大寫 d. 常量名全部大寫,單詞之間用_連接

  1. @Override愈魏,能用就用

  2. 使用類名調(diào)用靜態(tài)的類成員觅玻,而不是某個具體對象或表達式。


    image.png
  3. 盡量不要使用Finalizers

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末培漏,一起剝皮案震驚了整個濱河市溪厘,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌牌柄,老刑警劉巖畸悬,帶你破解...
    沈念sama閱讀 217,734評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異珊佣,居然都是意外死亡蹋宦,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評論 3 394
  • 文/潘曉璐 我一進店門咒锻,熙熙樓的掌柜王于貴愁眉苦臉地迎上來冷冗,“玉大人,你說我怎么就攤上這事惑艇≥镎蓿” “怎么了?”我有些...
    開封第一講書人閱讀 164,133評論 0 354
  • 文/不壞的土叔 我叫張陵滨巴,是天一觀的道長思灌。 經(jīng)常有香客問我,道長恭取,這世上最難降的妖魔是什么泰偿? 我笑而不...
    開封第一講書人閱讀 58,532評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮秽荤,結果婚禮上甜奄,老公的妹妹穿的比我還像新娘。我一直安慰自己窃款,他們只是感情好课兄,可當我...
    茶點故事閱讀 67,585評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著晨继,像睡著了一般烟阐。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上紊扬,一...
    開封第一講書人閱讀 51,462評論 1 302
  • 那天蜒茄,我揣著相機與錄音,去河邊找鬼餐屎。 笑死檀葛,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的腹缩。 我是一名探鬼主播屿聋,決...
    沈念sama閱讀 40,262評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼藏鹊!你這毒婦竟也來了润讥?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,153評論 0 276
  • 序言:老撾萬榮一對情侶失蹤盘寡,失蹤者是張志新(化名)和其女友劉穎楚殿,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體竿痰,經(jīng)...
    沈念sama閱讀 45,587評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡脆粥,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,792評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了菇曲。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片冠绢。...
    茶點故事閱讀 39,919評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖常潮,靈堂內(nèi)的尸體忽然破棺而出弟胀,到底是詐尸還是另有隱情,我是刑警寧澤喊式,帶...
    沈念sama閱讀 35,635評論 5 345
  • 正文 年R本政府宣布孵户,位于F島的核電站,受9級特大地震影響岔留,放射性物質發(fā)生泄漏夏哭。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,237評論 3 329
  • 文/蒙蒙 一献联、第九天 我趴在偏房一處隱蔽的房頂上張望竖配。 院中可真熱鬧何址,春花似錦、人聲如沸进胯。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽胁镐。三九已至偎血,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間盯漂,已是汗流浹背颇玷。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留就缆,地道東北人帖渠。 一個月前我還...
    沈念sama閱讀 48,048評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像竭宰,于是被迫代替她去往敵國和親阿弃。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,864評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 在上一篇的java編程規(guī)范(一)中我們講述了在Java編碼中的一般原則羞延,雖然這些原則并不涉及具體的代碼規(guī)范渣淳,但是這...
    間陽幕賓閱讀 1,154評論 1 4
  • Android編碼規(guī)范 源文件基礎 文件名 源文件以其最頂層的類名來命名,大小寫敏感伴箩,文件擴展名為.java入愧。 文...
    呼呼哥閱讀 941評論 0 0
  • 作者:李旺成 時間:2016年4月3日 1. 前言 這份文檔參考了 Google Java 編程風格規(guī)范和 Goo...
    diygreen閱讀 39,908評論 19 224
  • Android 編碼規(guī)范 1. 前言 這份文檔是 Google Java Code Style 的譯文,并稍有添加...
    人失憶閱讀 445評論 0 3
  • 你給我檸檬汽水的感覺 上一個夏末秋涼的熾熱的余燼時節(jié) 上一個薄霧微露的微寒的清晨 像是七月的烈陽下的海風 一而再 ...
    Asirnmo閱讀 88評論 0 0