java-language

Installation
SKILL.md

Java Language Patterns

Priority: P0 (CRITICAL)

Implementation Guidelines

  • Records: Use record for immutable DTOs/Value Objects. Records auto-generate equals, hashCode, toString. Avoid Lombok @Data on Pojos.
  • Local Variables: Use var for inferred types. Explicitly type interface variables.
  • Switch: Use Switch Expressions (->) and Pattern Matching over complex if/else chains.
  • Text Blocks: Use "" (Text Blocks) for JSON, SQL, or multi-line strings.
  • Pattern Matching: Use instanceof with pattern binding: if (obj instanceof String s).
  • Sealed Classes: Use sealed interface/class with permits clause for domain-driven restricted hierarchies. Switch expressions then exhaustive switch (compiler-verified).
  • Collections: Use List.of(), Map.of(), and Set.of() for immutable collections.
  • Streams: Use stream() pipelines for functional transformations. Use .toList() (Java 16+).
  • Optional: Utilize Optional<T> for return types. Use .ifPresentOrElse() or .orElseThrow().
  • Virtual Threads: Favor Executors.newVirtualThreadPerTaskExecutor() for I/O-heavy workloads.

Anti-Patterns

Installs
3
GitHub Stars
581
First Seen
Apr 1, 2026