Google Java Style Guide 是一套官方 Google Java 编码标准,目标是帮助团队编写一致、可维护的 Java 代码。该技能以规则清单与示例对照的形式呈现,便于在开发与评审中直接参照。
【核心规则】
- 缩进使用 2 个空格,不使用制表符。
- 每行字符数上限为 100。
- 只要适用就使用 @Override 注解。
- 禁止通配符导入,必须导入具体类型。
- 即使代码块只有一条语句,也必须使用大括号。
- 每个文件只允许一个顶层类。
- 类型定义优先使用接口。
【命名约定】
- 包:小写点分形式,例如 com.example.project。
- 类与接口:UpperCamelCase,例如 UserService。
- 方法:lowerCamelCase,例如 getUserById。
- 变量:lowerCamelCase,例如 userCount。
- 常量:UPPER_SNAKE_CASE,例如 MAX_RETRIES。
- 类型参数:单个字母,例如 T、RequestT。
【控制结构】 控制结构始终要求使用大括号,例如 if 语句即使只有一条语句也要写成带大括号的形式;增强 for 循环按标准写法遍历集合。
【异常处理】 推荐捕获具体异常,避免宽泛地捕获 Exception;不要使用 printStackTrace,应使用日志记录;可使用 try-with-resources 管理资源,例如在读取文件流时自动关闭。
【Lambda 与 Stream】 示例展示了使用 stream 的 filter、map、sorted、collect 组合处理集合,以及使用方法引用(如 System.out::println)进行遍历。
【Javadoc】 公共方法应编写 Javadoc,包含方法说明、@param 参数说明与 @return 返回值说明,例如查找用户的方法返回 Optional。
【导入】 只导入具体类型,例如 import java.util.List 与 import java.util.Optional,禁止 import java.util.*。
【常见错误对照】
- 通配符导入 → 只使用具体导入。
- 省略大括号 → 始终使用大括号。
- 缺少 @Override → 始终为覆写方法添加注解。
- 使用 e.printStackTrace() → 使用正规日志记录器。
- 宽泛捕获 Exception → 捕获具体异常。
- 使用 4 空格缩进 → 使用 2 空格缩进。
【适用场景】 编写新的 Java 代码、重构既有 Java 代码、代码评审、配置 Checkstyle 规则、新团队成员入职培训。
【安装方式】 npx skills add testdino-hq/google-styleguides-skills/java
完整细节、示例与边界情况请参见 java.md。