Java Generics and Collections : Fundamentals and Recommended Practices - Maurice Naftalin; Philip Wadler (2025)