Generics are one of the most complex features of Java. They are often poorly understood and lead to confusing errors. Unfortunately, it won’t get easier. Java 10, release planned for 2018, extends Generics. It’s now time to understand generics or risk being left behind. We start by stepping back into the halcyon days of 2004 and explain why generics were introduced in the first place back. We also explain why Java’s implementation is unique compared to similar features in other programming languages. Then we travel to the present to explaining how to make effective use of Generics. We then explore various entertaining code examples and puzzlers of how Generics are used today. Finally, this talk sheds light on the planned changes in Java 10 with practical code examples and related ideas from other programming languages. If you ever wanted to understand the buzz around higher kinded types or declaration site variance, now is your chance!
YOU MAY ALSO LIKE:
Generics: Past, Present and Future
Raoul-Gabriel Urma is a PhD student in Computer Science at the University of Cambridge. His research centers on programming languages and software engineering. He is an author of the upcoming book Java 8 in Action: Lambdas, Streams, and functional-style programming published by Manning.
Richard Warburton is an empirical technologist and solver of deep-dive technical problems. Recently he has written a book on Java 8 Lambdas for O’Reilly. He’s worked as a developer in quite varied areas including Statistical Analytics, Static Analysis, Compilers and Networking.