1:命名规范
类名用大驼峰式
参数变量·函数·成员变量·局部变量 小驼峰式
常亮命名全部大些单词用_隔开
抽象类用Abstract开头·异常类用Excetpion结尾·测试类用Test结尾
*POJO类boolean不用使用is开头
包名全部使用小写
代码中尽量不要出现看不懂的缩写
*使用设计模式要在名称中体现设计模式
***接口实现类要用impl结尾
枚举类结尾以Enum结尾
2.常量的使用规范
逻辑代码中尽量不要出翔魔法值(潜规则)--尽量在配置中或者常亮定义
***使用Long 或者long 赋值用大些L double float 同理
3.代码格式规范
函数·类的注释用/***/ 。 函数内注释用//
4.oop规约规范
*所有覆写方法鼻血用@Override注释
***使用.equal方法注意出现空指针 “test”.equals(a)
****所有整型包装类型推荐使用.equals
***浮点数的判断不能用equal 或者== 。 精度用 1e-6类似这样的处理
***所有POJO对象内的基本类型都使用包装类型
*****构造函数内不加入任何逻辑 -- 在之后的自定义函数中处理逻辑处理化内容
***string.split 要检查对象的长度
5.集合处理规范
*****只要覆写equal 就必须覆写hashcode 要不在hashMap 和HashSet 会出问题
***ArrayList 的subList 不可以强转ArrayList
***集合转数组 toArray 传入相同类型的长度为0的数组--String[] arr = list.toArray(new String[0])
Array.sort 比较的前提 (1.x y 和 y x 结果相反 2. x > y 和 u> z x > z 3.x==y 则y==x )
6.多线程处理规范
***线程池的使用尽量用ThreadPoolExecutor 可以明确资源的使用
**高并发的时可以尝试使用asc
Look 的使用规范
Look lock = new XxxxLock();
lock.lock();
try{
......
}finally{
locak.unLock();
}
**跨进程 多线程 高并发的应用可以使用乐观锁
在资源消耗或者或者其他逻辑中尽量使用<=0 判断 防止0被击穿
7.异常处理规范
***不要在finall中使用return 会把其他return替换
***在不确定异常类型或者外部调用jar处理异常要捕捉Throwable
***在try异常一定要处理掉
8.日志处理规范
日志框架的使用要用slf4j 不要使用logback log4j
日志保留天数至少15天
日志输出的时候用占位符可以减少String拼接的消耗。
warn日志处理服务器异常输入 **可以出奇效
9.数据库使用规范
boolean 用tinyint
表名·字段名全小写用_连接
主键索引-pk_ 唯一索引-uk 普通索引-idx_
varchar 长度不要超过5000 可以用text替换
10.ORM映射
明确全部的字段名称 不能用*
pojo字段不能一is开头