Java学习笔记-代码规范
代码规范
命名风格
类型 | 风格 | 示例 |
---|---|---|
变量名 | 驼峰 | localValue |
方法名 | 驼峰 | getValue |
类名 | 首字母大写 | JavaServer |
包名 | 小写,分隔符之间有且仅有一个自然语义的单词 | com.excample.demo |
枚举类型/常量 | 全大写,单词间用下划线隔开 | MAX_STOCK_COUNT |
禁止的命名:
- 不能以下划线/&开始或结束
- 禁止中英文混合
- 布尔类型不要加is前缀
- 统一使用 xxx/setXxx/getXxx
推荐的代码风格
空格
- 如果变量值仅在一个固定范围内变化,使用enum类型来定义。如SRTING、SUMMER、AUTUMN、WINTER
- 如果大括号内为空,简洁地写成{},无需换行和空格,如果是非空代码
void getUserID(){
///
} - 小括号和字符间不留空格,与保留字需要有空格(if/while/for)
- 锁进为4个空格、注释的双斜线和内容之间有且仅有一个空格
注释
- 类、类属性、类方法注释使用Javadoc的规范,使用
/* xxx */
- 所有抽象方法(包括接口)都必须要用Javadoc注释,除了返回值、参数、异常说明外,还必须指出什么方法做什么事情
- 枚举类型需要注释
控制语句
- 每行最多包含一条语句
- 当switch括号内的变量类型为String时,必须先进行null判断
- 在高并发场景中,避免使用等于作为中断或退出的条件,应该用大于等于或者小于等于
- 不要在表达式中插入赋值语句
- 避免使用取反逻辑运算符
高级编码规范
面向对象
- 使用类名直接引用静态类型和静态方法
- 避免使用构造函数创建字符串对象
- 所有的覆写方法都必须要加
@Override
注解 - 尽量不使用可变参数编程