首頁  >  文章  >  Java  >  java如何命名

java如何命名

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼原創
2019-12-27 14:01:265383瀏覽

java如何命名

1、套件名稱統一使用小寫,點分隔符號之間有且僅有一個自然語意的英文單字。包名統一使用單數形式,但是類別名稱如果有複數意義,類別名稱可以使用複數形式。

正例:應用程式工具包名為com.java.util、類別名為StringUtils

#2、類別名稱、介面名稱使用UpperCamelCase風格,必須遵從駝峰形式,但下列情形例外:DO/BO/DTO/VO/AO/PO/UID等。

正例:

UserLoginCheckService/UserDO

反例:

UserLoginCheckService/UserDO

3、方法名稱、參數名稱、成員變數、局部變數都統一使用lowerCamelCase風格,必須遵從駝峰形式。

正例:

userServiceImpl

反例:

userServiceImpl

4、常數命名全部大寫,單字間用底線隔開,力求語意表達完整清楚,不要嫌名字長。

正例:

MAX_BOOK_COUNT/CACHE_EXPIRED_TIME

反例:

MAX_COUNT/EXPIRED_TIME

5、為了達到程式碼自解釋的目標,任何自訂程式設計元素在命名時,使用盡量完整的單字組合來表達其意,即要做到「見名知意」。

正例:在JDK 中,表達原子更新的類別名稱為:AtomicReferenceFieldUpdater

反例:

String a = "李四"; // 天啦噜,鬼知道你这个a是啥意思啊

6、定義陣列時,類型與中括號緊鄰相連。

正例:

int[] array = new int[10];
int array[] = new int[10]; // 不建议这样写

7、抽象類別命名使用Abstract 或Base 開頭;異常類別命名使用Exception 結尾;測試類別命名以它要測試的類別的名稱開始,以Test 結尾。

正例:

AbstractService/CommonException/DemoTest

8、杜絕完全不規範的縮寫,避免望文不知義。

反例:AbstractClass「縮寫」命名成 AbsClass;condition「縮寫」 命名成 condi,此類隨意縮寫嚴重降低了程式碼的可閱讀性。

9、如果模組、 介面、類別、方法使用了設計模式,在命名時需體現出具體模式。

說明:將設計模式體現在名字中,有利於閱讀者快速理解架構設計理念。

正例:

public class OrderFactory;
public class LoginProxy;
public class ResourceObserver;

10、對於 Service 和 DAO 類,基於 SOA 的理念,暴露出來的服務一定是接口,內部的實現類用Impl 的後綴與接口區別。

正例:CacheServiceImpl實作CacheService介面

11、如果是形容能力的介面名稱,取對應的形容詞為介面名稱(通常是–able 的形容詞)。

正例:JDK中的Comparable介面

12、在long或Long賦值時,數值後使用大寫的L,不能是小寫的l,小寫容易跟數字1 混淆,造成誤解。

說明:Long a = 2l;寫的是數字的 21,還是 Long 型的 2 ? ?

13、不允許任何魔法值(即未經預先定義的常數)直接出現在程式碼中

正例:

public static final ORDER_REDIS_KEY_PREFIX = "orderId_";
String orderRedisKey = ORDER_REDIS_KEY_PREFIX + orderId;

反例:

String redisKey = "orderId_" + orderId;

14、枚舉類別名帶上Enum後綴,枚舉成員名稱需要全大寫,單字間用底線隔開。

正例:枚舉名字為ProcessStatusEnum的成員名稱:SUCCESS / UNKNOWN_REASON

PHP中文網,有大量免費的JAVA入門教程,歡迎大家學習!

以上是java如何命名的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn