用途:在编写 Java 21 应用或库代码时加载本技能,指导使用 record、sealed 类型与虚拟线程等特性编写现代且安全的代码。
主要能力:
- 使用 record 构建不可变 DTO 与值对象,并在紧凑构造器中完成校验。
- 使用 sealed 接口/类配合 switch 模式匹配,实现封闭层级的穷尽性检查。
- 使用虚拟线程处理阻塞 I/O,避免创建大型线程池。
使用方式:当涉及不可变 DTO 与值对象设计、封闭层级建模或阻塞 I/O 的虚拟线程使用时参考本技能。示例包括带校验的 Email record、Payment 密封接口与 Card/BankTransfer 记录及 PaymentPrinter 的 switch 匹配,以及通过 Executors.newVirtualThreadPerTaskExecutor() 提交阻塞任务。
适用场景:Java 21 应用或库代码编写;不可变 DTO;sealed 封闭层级;虚拟线程处理阻塞 I/O。
限制与反模式:避免使用可变数据载体(如公开字段的可变 DTO);避免为每个请求创建原始平台线程。
参考资源:Java 21 Release Notes(https://www.oracle.com/java/technologies/javase/21-relnote-issues.html)、JEP Index(https://openjdk.org/jeps/0)。其他信息暂未提供。