強(qiáng)制性標(biāo)準(zhǔn):
代碼中的命名均不能以下劃線或美元符號開端,也不能以下劃線或美元符號結(jié)束。
代碼中的命名禁止運(yùn)用拼音與英文混合的辦法,更不答應(yīng)直接運(yùn)用中文的辦法。
類名運(yùn)用UpperCamelCase風(fēng)格,有必要遵照駝峰辦法。
辦法名、參數(shù)名、成員變量、局部變量都統(tǒng)一運(yùn)用lowerCamelCase風(fēng)格,有必要遵照駝峰辦法。
常量命名全部大寫,單詞間用下劃線隔開,力求語義表達(dá)完整清楚,不要嫌名字長例如:MAX_STOCK_COUNT。
抽象類命名運(yùn)用Abstract或Base開頭;異常類命名運(yùn)用Exception結(jié)束;測驗類命名以它要測驗的類的名稱開端。
杜絕不標(biāo)準(zhǔn)的英文縮寫:AbstractClass縮寫成AbsClass;condition縮寫成condi;此類隨意縮寫嚴(yán)重降低了代碼的可閱覽性。
如果運(yùn)用到了規(guī)劃形式,建議在類名中體現(xiàn)出詳細(xì)的形式:
publicclassComponentFactorypublicclassBufferStrategypublicclassScrollerProxy
關(guān)于Service或Dao層的命名
插入:insert(引薦)或save
刪去:delete
修改:update(引薦)或modify
查詢單個方針:get
查詢多個方針:list
實(shí)體類有必要重載toString()辦法,這樣可以經(jīng)過調(diào)用方針的toString()來排查問題。
Object的equals辦法簡略拋空指針異常,應(yīng)運(yùn)用常量或確認(rèn)有值的方針來調(diào)用equals。
正例:”test”.equals(object);
反例:object.equals(“test”);
防止經(jīng)過一個類的方針引證拜訪此類的靜態(tài)變量或靜態(tài)辦法,無謂添加編譯器解析成本,直接用類名來拜訪即可。
引薦標(biāo)準(zhǔn):
調(diào)集初始化時,盡量指定調(diào)集初始值巨細(xì);
ArrayList盡量運(yùn)用ArrayList(intinitialCapacity)初始化。
運(yùn)用entrySet遍歷Map類調(diào)集KV,而不是keySet辦法進(jìn)行遍歷
闡明:keySet其實(shí)是遍歷了2次,一次是轉(zhuǎn)為Iterator方針,另一次是從hashMap中取出key所對應(yīng)的value。而entrySet只是遍歷了一次就把key和value都放到了entry中,效率更高。如果是JDK8,運(yùn)用Map.foreach辦法。
高度注意Map類調(diào)集K/V能不能存儲null值的狀況,如下表格:
調(diào)集類KeyValueSuper闡明
Hashtable不答應(yīng)為null不答應(yīng)為nullDictionary線程安全
ConcurrentHashMap不答應(yīng)為null不答應(yīng)為nullAbstractMap分段鎖技能
TreeMap不答應(yīng)為null答應(yīng)為nullAbstractMap線程不安全
HashMap答應(yīng)為null答應(yīng)為nullAbstractMap線程不安全
使用Set元素僅有的特性,可以快速對一個調(diào)集進(jìn)行去重操作,防止運(yùn)用List的contains辦法進(jìn)行遍歷、比照、去重操作。
經(jīng)過雙重查看鎖(double-checkedlocking)(在并發(fā)場景)完成延遲初始化的優(yōu)化問題隱患(可參閱The”Double-CheckedLockingisBroken”Declaration),引薦問題解決方案中較為簡略一種(適用于JDK5及以上版別),將方針特點(diǎn)聲明為volatile型。
*反例*:classFoo{privateHelperhelper=null;publicHelpergetHelper(){if(helper==null)synchronized(this){if(helper==null)helper=newHelper();}returnhelper;}//otherfunctionsandmembers…}
作者:劉戰(zhàn)塔_Terry
鏈接:https://www.jianshu.com/p/f5a55dff62f0
來源:簡書
著作權(quán)歸作者一切。商業(yè)轉(zhuǎn)載請聯(lián)系作者取得授權(quán),非商業(yè)轉(zhuǎn)載請注明出處。
廣州天河區(qū)珠江新城富力盈力大廈北塔2706
020-38013166(網(wǎng)站咨詢專線)
400-001-5281 (售后服務(wù)熱線)
深圳市坂田十二橡樹莊園F1-7棟
Site/ http://www.szciya.com
E-mail/ itciya@vip.163.com
品牌服務(wù)專線:400-001-5281
長沙市天心區(qū)芙蓉中路三段398號新時空大廈5樓
聯(lián)系電話/ (+86 0731)88282200
品牌服務(wù)專線/ 400-966-8830
旗下運(yùn)營網(wǎng)站:
Copyright ? 2016 廣州思洋文化傳播有限公司,保留所有權(quán)利。 粵ICP備09033321號