java-fundamentals
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseJava Fundamentals Skill
Java基础编程Skill
Master core Java programming with production-quality patterns.
掌握符合生产级规范的核心Java编程。
Overview
概述
This skill covers Java fundamentals including syntax, OOP, collections, streams API, and exception handling for Java 8-21.
本Skill涵盖Java 8-21的核心基础知识,包括语法、OOP、集合、Streams API和异常处理。
When to Use This Skill
适用场景
Use when you need to:
- Write clean, idiomatic Java code
- Design classes following OOP principles
- Choose appropriate collection types
- Implement functional programming patterns
- Handle exceptions properly
当你需要以下操作时使用:
- 编写简洁、规范的Java代码
- 遵循OOP原则设计类
- 选择合适的集合类型
- 实现函数式编程模式
- 正确处理异常
Topics Covered
涵盖主题
Core Syntax (Java 8-21)
核心语法(Java 8-21)
- Variables, data types, operators
- Control flow, methods, classes
- Records (Java 16+), sealed classes (Java 17+)
- Pattern matching (Java 21)
- 变量、数据类型、运算符
- 控制流、方法、类
- Records(Java 16+)、密封类(Java 17+)
- 模式匹配(Java 21)
Object-Oriented Programming
面向对象编程
- Classes, inheritance, polymorphism
- Interfaces and abstract classes
- SOLID principles
- 类、继承、多态
- 接口和抽象类
- SOLID原则
Collections Framework
集合框架
- List: ArrayList, LinkedList
- Set: HashSet, TreeSet
- Map: HashMap, ConcurrentHashMap
- Queue: ArrayDeque, PriorityQueue
- List:ArrayList、LinkedList
- Set:HashSet、TreeSet
- Map:HashMap、ConcurrentHashMap
- Queue:ArrayDeque、PriorityQueue
Streams API
Streams API
- filter, map, flatMap, reduce, collect
- Optional handling
- Parallel streams
- filter、map、flatMap、reduce、collect
- Optional处理
- 并行流
Exception Handling
异常处理
- Checked vs unchecked exceptions
- Try-with-resources
- Custom exceptions
- 受检异常与非受检异常
- try-with-resources
- 自定义异常
Quick Reference
快速参考
java
// Record (Java 16+)
public record User(String name, String email) {}
// Pattern matching (Java 21)
String format(Object obj) {
return switch (obj) {
case Integer i -> "Int: %d".formatted(i);
case String s -> "String: %s".formatted(s);
default -> obj.toString();
};
}
// Stream operations
List<String> names = users.stream()
.filter(User::isActive)
.map(User::getName)
.sorted()
.toList();
// Optional handling
String name = Optional.ofNullable(user)
.map(User::getName)
.orElse("Unknown");java
// Record (Java 16+)
public record User(String name, String email) {}
// Pattern matching (Java 21)
String format(Object obj) {
return switch (obj) {
case Integer i -> "Int: %d".formatted(i);
case String s -> "String: %s".formatted(s);
default -> obj.toString();
};
}
// Stream operations
List<String> names = users.stream()
.filter(User::isActive)
.map(User::getName)
.sorted()
.toList();
// Optional handling
String name = Optional.ofNullable(user)
.map(User::getName)
.orElse("Unknown");Collection Selection
集合选择指南
| Need | Use | Reason |
|---|---|---|
| Indexed access | ArrayList | O(1) random access |
| Unique elements | HashSet | O(1) contains |
| Sorted unique | TreeSet | O(log n) sorted |
| Key-value pairs | HashMap | O(1) get/put |
| 需求 | 选择 | 原因 |
|---|---|---|
| 索引访问 | ArrayList | O(1)随机访问 |
| 唯一元素 | HashSet | O(1)存在性检查 |
| 排序唯一元素 | TreeSet | O(log n)排序 |
| 键值对 | HashMap | O(1)获取/存入 |
Troubleshooting
故障排查
| Problem | Cause | Solution |
|---|---|---|
| NullPointerException | Null reference | Use Optional |
| ConcurrentModificationException | Modify during iteration | Iterator.remove() |
| ClassCastException | Wrong type | Use generics |
| 问题 | 原因 | 解决方案 |
|---|---|---|
| NullPointerException | 空引用 | 使用Optional |
| ConcurrentModificationException | 迭代期间修改 | 使用Iterator.remove() |
| ClassCastException | 类型错误 | 使用泛型 |
Usage
使用方法
Skill("java-fundamentals")Skill("java-fundamentals")