其他
编写或排查 Java 8-21 核心代码时使用:掌握语法…
适用于需要写出惯用、生产级 Java 代码、选择集合类型、使用 Stream/Optional 和处理异常的 Java 开发场景。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 49/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 85/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 60/100 ×0.15
适用场景
编写或排查 Java 8-21 核心代码通用
解决思路
- 将技能覆盖范围限定为 Java 8-21 的核心基础:语法、OOP、集合框架、Streams API、异常处理。
- 以生产质量模式为目标编写 Java 代码。
- 编写干净、符合惯例的 Java 代码。
- 按 OOP 原则设计类。
- 选择合适的集合类型。
- 实现函数式编程模式。
- 正确处理异常。
- 核心语法:使用变量、数据类型、运算符。
- 核心语法:使用控制流、方法、类。
- 核心语法:使用 Records(Java 16+)。
- 核心语法:使用 sealed classes(Java 17+)。
- 核心语法:使用模式匹配(Java 21)。
- OOP:使用类、继承、多态。
- OOP:使用接口和抽象类。
- OOP:应用 SOLID 原则。
- 集合框架:List 使用 ArrayList、LinkedList。
- 集合框架:Set 使用 HashSet、TreeSet。
- 集合框架:Map 使用 HashMap、ConcurrentHashMap。
- 集合框架:Queue 使用 ArrayDeque、PriorityQueue。
- Streams API:使用 filter、map、flatMap、reduce、collect。
- Streams API:使用 Optional 处理。
- Streams API:使用并行流。
- 异常处理:区分受检异常与非受检异常。
- 异常处理:使用 try-with-resources。
- 异常处理:使用自定义异常。
- 快速参考:使用 record 声明数据载体,如 public record User(String name, String email) {}。
- 快速参考:使用模式匹配 switch,如 String format(Object obj) 中按 Integer、String、default 分支返回格式化字符串。
- 快速参考:使用 Stream 操作,如 users.stream().filter(User::isActive).map(User::getName).sorted().toList()。
- 快速参考:使用 Optional 处理 null,如 Optional.ofNullable(user).map(User::getName).orElse("Unknown")。
- 集合选择:需要索引访问时使用 ArrayList,因为 O(1) 随机访问。
- 集合选择:需要唯一元素时使用 HashSet,因为 O(1) contains。
- 集合选择:需要排序唯一时使用 TreeSet,因为 O(log n) sorted。
- 集合选择:需要键值对时使用 HashMap,因为 O(1) get/put。
- 故障排除:遇到 NullPointerException(空引用)时使用 Optional。
- 故障排除:遇到 ConcurrentModificationException(迭代时修改)时使用 Iterator.remove()。
- 故障排除:遇到 ClassCastException(类型错误)时使用泛型。
- 参数验证:设置 java_version 参数默认 "21",允许 "8"、"11"、"17"、"21"。
- 参数验证:设置 topic 参数允许 syntax、oop、collections、streams、exceptions、generics。
- 限制可用工具为 Read、Write、Bash、Glob、Grep。
- 通过 Skill("java-fundamentals") 调用该技能。
适用边界 · 注意事项
- 不适用于非 Java 项目。
- 不覆盖 Spring、Jakarta EE、数据库、构建工具等框架或生态特定知识。
- 使用 Java 8/11/17 时不要使用 Records、sealed classes、模式匹配等更高版本特性。