电竞比分网-中国电竞赛事及体育赛事平台

分享

Java編碼規(guī)范整理匯總

 新用戶94386479 2020-04-10

Java的入門過程中,我們首先要養(yǎng)成一個良好的編寫代碼習慣。那么,了解清楚Java的編碼規(guī)范就顯得尤為必要了。編碼格式不僅僅是美不美觀的問題。這里我們可以試想一下,如果在Java開發(fā)中編碼不規(guī)范,容易出現(xiàn)bug不說,而且后續(xù)還難以維護。因此,遵守編碼規(guī)范可以讓代碼的風格好像是一個人寫出來的,即使是有很多人參與這個開發(fā)項目。

          

    1、源文件基礎

    源文件以其最頂層的類名來命名,大小寫敏感,文件擴展名為 .java。源文件編碼格式為UTF-8。除了行結束符序列,ASCII水平空格字符(0x20,即空格)是源文件中唯一允許出現(xiàn)的空白字符,這意味著所有其它字符串中的空白字符都要進行轉義;制表符不用于縮進。對于具有特殊轉義序列的任何字符(\b, \t, \n, \f, \r, ", '),我們使用它的轉義序列,而不是相應的八進制(比如 \012)Unicode(比如 \u000a)轉義。對于剩余的非ASCII字符,是使用實際的Unicode字符(比如∞),還是使用等價的Unicode轉義符(比如\u221e),取決于哪個能讓代碼更易于閱讀和理解。

      2、源文件結構

      一個源文件包含(按順序地):許可證或版權信息;package語句;import語句;一個頂級類。以上每個部分之間用一個空行隔開。如果一個文件包含許可證或版權信息,那么它應當被放在文件最前面。package語句不換行,列限制(4.4節(jié))并不適用于package語句。import不要使用通配符,不要換行。

        3、格式

        大括號與 if,else,for,do,while語句一起使用,即使只有一條語句(或是空),也應該把大括號寫上。對于非空塊和塊狀結構,大括號遵循KernighanRitchie風格,左大括號前不換行;左大括號后換行;右大括號前換行;如果右大括號是一個語句、函數(shù)體或類的終止,則右大括號后換行否則不換行。例如,如果右大括號后面是else或逗號,則不換行。一個空的塊狀結構里什么也不包含,大括號可以簡潔地寫成 {},不需要換行。例外:如果它是一個多塊語句的一部分(if/else  try/catch/finally) ,即使大括號內沒內容,右大括號也要換行。每當開始一個新的塊,縮進增加2個空格,當塊結束時,縮進返回先前的縮進級別??s進級別適用于代碼和注釋。

          4、空白

          以下情況需要使用一個空行:類內連續(xù)的成員之間:字段,構造函數(shù),方法,嵌套類,靜態(tài)初始化塊,實例初始化塊;在函數(shù)體內,語句的邏輯分組間使用空行;類內的第一個成員前或最后一個成員后的空行是可選;要滿足本文檔中其他節(jié)的空行要求。除了語言需求和其它規(guī)則,并且除了文字,注釋和Javadoc用到單個空格,單個ASCII空格也出現(xiàn)在以下幾個地方:分隔任何保留字與緊隨其后的左括號( ()( if,forcatch);分隔任何保留字與其前面的右大括號( })( else,catch)等等。

            5、命名約定

            對所有標識符都通用的規(guī)則,標識符只能使用ASCII字母和數(shù)字,因此每個有效的標識符名稱都能匹配正則表達式 \w+。類名都以 UpperCamelCase風格編寫,方法名都以 lowerCamelCase風格編寫;常量名命名模式為 CONSTANT_CASE,全部字母大寫,用下劃線分隔單詞;非常量字段名以 lowerCamelCase風格編寫;參數(shù)名以 lowerCamelCase風格編寫;比起其它類型的名稱,局部變量名可以有更為寬松的縮寫。

              6、編程實踐

              只要是合法的,就把 @Override注解給用上。使用類名調用靜態(tài)的類成員,而不是具體某個對象或表達式。極少會去重寫 Object.finalize

              上面我們談論的Java編碼規(guī)范,可以把它看做是一種需要盡量去做的標準守則,而不是強制的命令要求。最后,希望大家都能寫出優(yōu)美動人,而有準確的編碼。



    本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多