Google Java代码风格指南 | AI生成和翻译
1. 源文件基础规范
- 文件命名:
- 源文件以其包含的顶级类区分大小写的名称命名
- 文件必须使用 UTF-8 编码
- 不鼓励在文件名中使用特殊字符
2. 源文件结构
源文件组织顺序
- package 语句
- import 语句
- 仅包含一个顶级类
import 语句规则
- 禁止使用通配符导入
- 允许静态导入
- 导入语句按特定顺序组织:
- 所有静态导入
- 所有非静态导入
- 每个分组内的导入按字母顺序排列
3. 格式规范
缩进与花括号
- 使用 2 个空格缩进(禁用制表符)
if、else、for、do和while语句必须使用花括号,即使代码块只有一行- 推荐使用 K&R 花括号风格
public void method() { if (condition) { // 代码块 } }
行长度与换行
- 最大行长度为 100 个字符
- 优先在较高级别的语法断点处换行
- 方法调用链换行时,在
.之前进行换行
4. 命名规范
通用规则
- 包名:全小写,无下划线
- 类名:大驼峰命名法
- 方法名:小驼峰命名法
- 常量名:全大写蛇形命名法
- 非常量字段:小驼峰命名法
- 参数名:小驼峰命名法
- 局部变量名:小驼峰命名法
特定命名实践
- 避免使用缩写
- 异常类名必须以
Exception结尾 - 测试类命名为
TestClassName
5. 编程实践
Java 语言规则
- 异常处理:
- 捕获具体异常
- 避免空的 catch 块
- 始终包含详细的错误信息
- final 关键字:
- 方法参数使用
final修饰 - 优先使用不可变对象
- 方法参数使用
- 注解:
- 重写方法必须使用
@Override注解 - 恰当使用标准注解
- 重写方法必须使用
代码结构
- 优先使用组合而非继承
- 保持方法简短且功能专注
- 每行仅包含一条语句
- 避免条件语句的深度嵌套
6. 注释与文档
Javadoc 规范
- 所有公共类和方法必须有 Javadoc
- Javadoc 注释以
/**开头 - 包含描述、参数、返回值和异常说明
- 使用
@param、@return、@throws标签
行内注释
- 谨慎使用
- 解释“为什么”而非“是什么”
- 保持注释简洁且有意义
7. 版本控制注意事项
- 避免提交被注释掉的代码
- 使用版本控制系统功能而非代码注释来跟踪变更
8. 性能考量
- 优先使用增强型 for 循环
- 字符串拼接使用
StringBuilder - 使用 try-with-resources 关闭资源
- 避免创建不必要的对象
9. 测试原则
- 编写单元测试
- 追求高代码覆盖率
- 使用 JUnit 进行测试
- 模拟外部依赖
- 测试边界情况和错误条件
10. 辅助工具
- Google 提供 Java 格式化工具和静态分析工具
- 可使用 CheckStyle 和 Error Prone 强制执行样式规范
结语
Google Java 样式指南提供了一套全面的规范,旨在确保跨项目Java代码的一致性、可读性和可维护性。