国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

常量定義

1. 【強(qiáng)制】不允許出現(xiàn)任何魔法值 ( 即未經(jīng)定義的常量 ) 直接出現(xiàn)在代碼中。

反例:  String key =" Id # taobao _"+ tradeId;

cache . put(key ,  value);

2. 【強(qiáng)制】 long 或者 Long 初始賦值時(shí),必須使用大寫的 L ,不能是小寫的 l ,小寫容易跟數(shù)字1 混淆,造成誤解。

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

3. 【推薦】不要使用一個(gè)常量類維護(hù)所有常量,應(yīng)該按常量功能進(jìn)行歸類,分開維護(hù)。如:緩存相關(guān)的常量放在類:CacheConsts 下 ; 系統(tǒng)配置相關(guān)的常量放在類: ConfigConsts 下。

說明:大而全的常量類,非得使用查找功能才能定位到修改的常量,不利于理解和維護(hù)。

4. 【推薦】常量的復(fù)用層次有五層:跨應(yīng)用共享常量、應(yīng)用內(nèi)共享常量、子工程內(nèi)共享常量、包內(nèi)共享常量、類內(nèi)共享常量。

1 ) 跨應(yīng)用共享常量:放置在二方庫中,通常是 client . jar 中的 constant 目錄下。

2 ) 應(yīng)用內(nèi)共享常量:放置在一方庫的 modules 中的 constant 目錄下。

反例:易懂變量也要統(tǒng)一定義成應(yīng)用內(nèi)共享常量,兩位攻城師在兩個(gè)類中分別定義 了表示“是”的變量:

類 A 中: public static final String YES = " yes " ;

類 B 中: public static final String YES = " y " ;

A . YES . equals(B . YES) ,預(yù)期是 true ,但實(shí)際返回為 false ,導(dǎo)致產(chǎn)生線上問題。

3 ) 子工程內(nèi)部共享常量:即在當(dāng)前子工程的 constant 目錄下。

4 ) 包內(nèi)共享常量:即在當(dāng)前包下單獨(dú)的 constant 目錄下。

5 ) 類內(nèi)共享常量:直接在類內(nèi)部 private static final 定義。

5. 【推薦】如果變量值僅在一個(gè)范圍內(nèi)變化用 Enum 類。如果還帶有名稱之外的延伸屬性,必須使用 Enum 類,下面正例中的數(shù)字就是延伸信息,表示星期幾。

正例: public Enum {  MONDAY( 1 ) ,  TUESDAY( 2 ) ,  WEDNESDAY( 3 ) ,  THURSDAY( 4 ) ,  FRIDAY( 5 ) ,

SATURDAY( 6 ) ,  SUNDAY( 7 ); }