SuperAPI AI 工具集

java-engineer

编程与开发

查看项目

更新于 10-15 23:31

技能介绍

用途:该技能不教授 Java 语言本身,而是把项目策略与代码评审中反复出现的陷阱固化为规则,在编写、评审或重构 Java 代码时使用。假定已掌握 records、sealed、模式匹配、文本块、Stream、var、泛型与 Optional API 等基础。

主要能力:给出 MUST DO 与 MUST NOT DO 清单。要求 Optional 仅作返回类型;值类用 record(JPA 实体除外);封闭层级用 sealed 加穷尽 switch;优先 switch 表达式与模式匹配 switch;字段默认 final;边界处快速失败(Objects.requireNonNull、record 紧凑构造器校验);AutoCloseable 用 try-with-resources;阻塞 I/O 用虚拟线程,CPU 密集任务不用;多调用扇出用结构化并发;参数化日志。禁止无 isPresent 的 Optional.get、原始类型、集合方法返回 null、受检异常泄漏进 Stream/lambda、捕获 Exception/Throwable、修改输入集合、在虚拟线程上对阻塞调用加 synchronized、在 parallelStream 中阻塞、修改 Stream.toList() 结果、日志记录 PII 或令牌。

使用方式:先做设置检查——用 java --version 及 pom.xml 的 <maven.compiler.release> 或 build.gradle(.kts) 的 toolchain 确认 JDK 与目标版本(低于 17 需调整特性使用;当前 LTS 为 Java 25,上一 LTS 为 Java 21);使用 ./mvnw 或 ./gradlew 而非全局 mvn/gradle;检查是否已有 Lombok,有则优先 @RequiredArgsConstructor/@Slf4j/@Builder,无则不擅自引入;尊重现有 error-prone、checkstyle、spotbugs、pmd 规则;若构建使用 --enable-preview 需先确认标志。输出代码时给出简短计划、代码和所应用的非显然规则清单;评审时明确指出违规并给出最小修复。

适用场景与限制:适用于 Java 17–25 项目的日常编码、评审与重构。参考资料按需加载:pitfalls.md 用于调试 Optional、Stream、switch、records、泛型等行为;modern-java.md 用于 records、密封层级、模式匹配 switch 与预览特性;concurrency.md 用于虚拟线程、结构化并发、ExecutorService 生命周期与 ThreadLocal 陷阱;io.md 用于文件、流、套接字 I/O、字符集、部分读取与 NIO 缓冲区。具体安装命令与收费信息暂未提供。