返回 Skill 列表
extension
分类: 开发与工程无需 API Key

141-java-refactoring-with-modern-features

当您需要重构Java代码以采用现代Java特性(Java 8+)时使用——包括将匿名类迁移到lambda表达式,用Stream API替换Iterator循环,采用Optional来提高空指针安全性,从旧的Date/Calendar切换到java.time,使用集合工厂方法,为异步操作迁移到CompletableFuture,应用文本块、var推断,或利用Java 25中的特性如灵活的构造函数体和模块导入声明。属于skills-for-java项目的一部分

person作者: jakexiaohubgithub

Modern Java Development Guidelines (Java 8+)

Identify and apply modern Java (Java 8+) refactoring opportunities to improve readability, maintainability, and performance.

What is covered in this Skill?

  • Lambda expressions and method references (over anonymous classes)
  • Stream API for declarative collection processing
  • Optional for null-safe APIs
  • java.time API (replacing Date/Calendar)
  • Default interface methods, var type inference
  • Unmodifiable collection factory methods (List.of(), Set.of(), Map.of())
  • Text blocks for multi-line strings
  • Java 25 Flexible Constructor Bodies (JEP 513)
  • Java 25 Module Import Declarations (JEP 511)

Scope: The reference is organized by examples (good/bad code patterns) for each core area. Apply recommendations based on applicable examples.

Constraints

Before applying any modern Java refactoring, ensure the project compiles. If compilation fails, stop immediately — do not proceed until the project compiles successfully. After applying improvements, run full verification.

  • MANDATORY: Run ./mvnw compile or mvn compile before applying any changes
  • SAFETY: If compilation fails, stop immediately — do not proceed until the project compiles successfully
  • VERIFY: Run ./mvnw clean verify or mvn clean verify after applying improvements
  • BEFORE APPLYING: Read the reference for detailed good/bad examples, constraints, and safeguards for each modern Java feature
  • EDGE CASE: If request scope is ambiguous, stop and ask a clarifying question before applying changes
  • EDGE CASE: If required inputs, files, or tooling are missing, report what is missing and ask whether to proceed with setup guidance

When to use this skill

  • Review Java code for modern Java development
  • Apply best practices for modern Java development in Java code
  • Modernize Java code with records pattern matching or switch expressions
  • Replace legacy idioms with modern Java features
  • Adopt Java 8+ language features safely

Workflow

  1. Compile project before modernization

Run ./mvnw compile or mvn compile and stop immediately if compilation fails.

  1. Read modern-Java reference and identify candidates

Read references/141-java-refactoring-with-modern-features.md and identify high-value opportunities to adopt modern Java features.

  1. Apply modern Java refactorings

Refactor incrementally using appropriate language/library features while preserving behavior and readability.

  1. Verify with full build

Run ./mvnw clean verify or mvn clean verify after applying improvements.

Reference

For detailed guidance, examples, and constraints, see references/141-java-refactoring-with-modern-features.md.