128-java-generics
Installation
SKILL.md
Java Generics Best Practices
Review and improve Java code using comprehensive generics best practices that enforce compile-time type safety and enable flexible, reusable APIs.
What is covered in this Skill?
- Type safety: avoiding raw types, eliminating unsafe casts
- Code reusability: generic methods and types for multiple type contexts
- PECS wildcards:
? extendsfor producers,? superfor consumers - Diamond operator for type inference
- Type erasure awareness: type tokens, factory patterns, array creation
- Generic inheritance and variance: invariance, covariance, contravariance
@SafeVarargsfor heap pollution prevention- Wildcard capture helpers, self-bounded generics (CRTP) for fluent builders
- Proper wildcard API design:
Comparator<? super T>,Function<? super T, ? extends R> - Arrays-vs-generics covariance pitfalls, serialization with
TypeReference/TypeToken - Generic naming conventions (
T,E,K/V,?), typesafe heterogeneous containers - Integration with Records, sealed types, and pattern matching
Scope: The reference is organized by examples (good/bad code patterns) for each core area. Apply recommendations based on applicable examples.