java缩写规范_JAVA强制性代码规范

本文档提供了详细的Java编码规范,包括命名约定、驼峰命名法、类及方法命名、异常处理等,强调了代码的可读性和维护性。此外,还介绍了集合初始化、Map遍历的最佳实践,以及不同Map实现对null值的支持情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

强制性标准:

代码中的命名均不能以下划线或美元符号开端,也不能以下划线或美元符号结束。

代码中的命名禁止运用拼音与英文混合的办法,更不答应直接运用中文的办法。

类名运用UpperCamelCase风格,有必要遵照驼峰办法。

办法名、参数名、成员变量、局部变量都统一运用lowerCamelCase风格,有必要遵照驼峰办法。

常量命名全部大写,单词间用下划线隔开,力求语义表达完整清楚,不要嫌名字长例如:MAX_STOCK_COUNT。

抽象类命名运用Abstract或Base开头;异常类命名运用Exception结束;测验类命名以它要测验的类的名称开端。

杜绝不标准的英文缩写:AbstractClass缩写成AbsClass;condition缩写成condi;此类随意缩写严重降低了代码的可阅览性。

如果运用到了规划形式,建议在类名中体现出详细的形式:6356a85817ada4c577e37e158436b226.png

publicclassComponentFactorypublicclassBufferStrategypublicclassScrollerProxy

关于Service或Dao层的命名

插入:insert(引荐)或save

删去:delete

修改:update(引荐)或modify

查询单个方针:get

查询多个方针:list

实体类有必要重载toString()办法,这样可以经过调用方针的toString()来排查问题。

Object的equals办法简略抛空指针异常,应运用常量或确认有值的方针来调用equals。

正例:”test”.equals(object);

反例:object.equals(“test”);

防止经过一个类的方针引证拜访此类的静态变量或静态办法,无谓添加编译器解析成本,直接用类名来拜访即可。

引荐标准:

调集初始化时,尽量指定调集初始值巨细;

ArrayList尽量运用ArrayList(intinitialCapacity)初始化。

运用entrySet遍历Map类调集KV,而不是keySet办法进行遍历

阐明:keySet其实是遍历了2次,一次是转为Iterator方针,另一次是从hashMap中取出key所对应的value。而entrySet只是遍历了一次就把key和value都放到了entry中,效率更高。如果是JDK8,运用Map.foreach办法。

高度注意Map类调集K/V能不能存储null值的状况,如下表格:

调集类KeyValueSuper阐明

Hashtable不答应为null不答应为nullDictionary线程安全

ConcurrentHashMap不答应为null不答应为nullAbstractMap分段锁技能

TreeMap不答应为null答应为nullAbstractMap线程不安全

HashMap答应为null答应为nullAbstractMap线程不安全

使用Set元素仅有的特性,可以快速对一个调集进行去重操作,防止运用List的contains办法进行遍历、比照、去重操作。

经过双重查看锁(double-checkedlocking)(在并发场景)完成延迟初始化的优化问题隐患(可参阅The”Double-CheckedLockingisBroken”Declaration),引荐问题解决方案中较为简略一种(适用于JDK5及以上版别),将方针特点声明为volatile型。

*反例*:classFoo{privateHelperhelper=null;publicHelpergetHelper(){if(helper==null)synchronized(this){if(helper==null)helper=newHelper();}returnhelper;}//otherfunctionsandmembers…}

作者:刘战塔_Terry

链接:https://www.jianshu.com/p/f5a55dff62f0

来源:简书

著作权归作者一切。商业转载请联系作者取得授权,非商业转载请注明出处。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值