字母+数字+下划线+dollar符($)组合的方式
不能以数字或者美元符号或者下划线开头;
不能以美元符号或者下划线结束
驼峰式命名
方法名、变量名、参数名都使用lowerCamelCase驼峰式命名
严禁使用拼音与英文混合的形式,更不能直接使用中文
常量名称全部大写,单词用下划线隔开,力求语义完整
MAX_STOCK_COUNT
抽象类命名使用Abstract或Base开头;异常类命名以Exception结尾;测试类以要测试的类名称开始,以Test结尾
BasePerson
数组使用int[] array形式
POJO类中任何布尔类型的变量不要加is前缀,不然可能引起序列化错误
规范化缩写
如Config->Conf
大括号要写规范
1.(空格){}
2.(空格){
// …内容
}
小括号 if / else / for / while / do 等与括号之间必须加空格
if (1 == 2)
注释的双斜线与注释内容之间有且仅有一个空格
方法参数在定义和传入时,多个参数逗号后边必须加空格
method(args1, args2, args3)
直接使用类名访问静态变量或者方法
所有重写的方法都必须使用@Override注释
不要使用过时的类和方法
使用equals方法时,应该让常量或者确定值来调用equals。否则容易抛空指针异常
如:“test”.equals(object)
属性类型要与数据库字段类型相匹配
如:数据库字段的numeric必须与类属性的Long类型相对应
边遍历边移除(add/remove) Collection 中的元素使用迭代器而不是foreach
边遍历边修改 Collection 的唯一正确方式是使用 Iterator.remove() 方法,如下:
并发操作时,也要对Iterator加锁
Iterator<Integer> it = list.iterator();
while(it.hasNext()){
// do something
it.remove();
}
一种最常见的错误代码如下:
for(Integer i : list){
list.remove(i)
}
//运行以上错误代码会报 ConcurrentModificationException 异常。
这是因为当使用 foreach(for(Integer i : list)) 语句时,
会自动生成一个iterator 来遍历该 list,但同时该 list 正在被 Iterator.remove() 修改。
Java 一般不允许一个线程在遍历 Collection 时另一个线程修改它。
continue一般不能用于switch语句中,但是switch语句如果在循环内的话,就可以使用continue语句。相当于说,跳出switch语句,跳出本次循环,进行下一次循环。
break:循环中遇到break,意思是说跳出本次循环,或跳出switch语句。
switch必须包含default且放在最后;
break是退出switch语句块;return是退出方法体
if / else / for / while / do 都要使用大括号;即使一行代码也要使用大括号
接口测试意义:
按照分层测试模型,处于中间层的接口测试,在效率,成本,技术,实施难度上综合来讲,是收益最大的。相较于传统的UI层次的测试,接口测试把测试提前了并且能够覆盖到一些UI测试无法触及的功能点,提高了测试的覆盖率。接口测试也更容易实现自动化持续集成,支持后端快速发版需求。
接口测试标准
# 1. 要求验证接口正常调用无误
根据业务规则构造合适的参数进行接口调用,接口请求正常且业务处理逻辑正确。
# 2. 验证接口入参必填项
要求入参必填项均填入的情况下,接口请求正常且业务处理逻辑正确。
入参必填项不填或传入为Null的情况下,返回错误信息,内容包含具体什么项目没有填写。
# 3. 验证接口入参选填项
要求选填项不填或者为null时,接口请求正常且业务处理逻辑正确。
# 4. 验证接口入参的字段类型
要求字段类型与接口文档一致时,接口请求正常且业务处理逻辑正确。
字段类型与接口文档不一致时,接口请求失败并返回相关信息。
类、类属性、类方法的注释必须使用 Javadoc 规范,使用/**内容*/
格式,不得使用// xxx
方式。
/**
*内容
*内容
*/
所有的类都必须添加创建者和创建日期。
方法内部单行注释,在被注释语句上方另起一行,使用// xxx
注释。
方法内部多行注释
使用/*内容*/
注释,注意与代码对齐。
所有的枚举类型字段
及常量字段
必须要有注释,说明每个数据项的用途。
对于方法参数需要填写参数注释。
代码修改的同时,注释也要进行相应的修改,尤其是参数、返回值、异常、核心逻辑等的修改。
在类中删除未使用的任何字段和方法;在方法中删除未使用的任何参数声明与内部变量。
对于注释的要求:
好的命名、代码结构是自解释的,注释力求精简准确、表达到位。避免出现注释的一个极端:过多过滥的注释,代码的逻辑一旦修改,修改注释是相当大的负担。
编写注释时需要用确定的语言,禁止出现 “当前不用了” ," 可能之后会用到 " 此类不确定描述,对代码后续维护中会造成困扰。
特殊注释标记,请注明标记人与标记时间。 待办事宜(TODO):标记好标记人,标记时间和预计处理时间。