用途:在 Java 代码中识别并应用健壮的异常处理实践,提升错误清晰度、安全性、可调试性与系统可靠性。
主要能力:使用具体异常类型而非泛化的 Exception/RuntimeException;用 try-with-resources 自动清理资源;编写不泄露信息的异常消息;通过异常链保留完整错误上下文;用 IllegalArgumentException/NullPointerException 做早期输入校验;处理 InterruptedException 并恢复中断状态;编写 @throws JavaDoc 并遵循快速失败原则;使用带关联 ID 的结构化日志,避免重复记录并抛出;通过集中式异常映射器在 API 边界转换异常;仅对幂等操作做有界重试与退避;强制超时并传播截止时间;用 Throwable#addSuppressed 记录次要清理失败;不捕获 Throwable/Error;通过错误指标实现可观测性;在异步 CompletionStage 代码中传播失败。
使用方式:应用任何异常处理改动前,先确保项目可编译。强制先运行 ./mvnw compile 或 mvn compile;若编译失败立即停止,直到项目恢复有效状态。然后阅读 references/126-java-exception-handling.md,按其中好/坏示例识别适用的失败处理与可观测性改进,重构为具体异常、安全资源处理、错误转换和一致日志模式。应用改进后运行 ./mvnw clean verify 或 mvn clean verify 做完整验证。
适用场景:Java 异常处理、在 Java 代码中使用 try-with-resources、创建异常链、应用快速失败校验等。
限制:参考按示例组织,需依据适用示例应用建议;未提供具体版本、依赖或平台要求。