Learn about Java Generics and how to create Generic classes. You also learn about Generic Interfaces and Methods.
After learning and understanding Java Generics we then dive into the Java Collections Framework where we learn about data structures such as List, ArrayList, HashMap, HashSet, LinkedList... and so on. Generics are an important part of the Java programming language.
We have extra lessons on Java Optional which helps us avoid null pointer exceptions in Java. You will learn about Optionals because it's knowledge will be applied when you learn about Java Streams API.
Finally, we learn about the Streams API, how it works and the various methods such as filter(), map(), flatMap(), reduce(), collect() ... and so on.
After this course, you should have a solid understanding of the Java Generics, the Collection Framework with its Data Structures and the Java Streams API.
In a nutshell, generics enable types (classes and interfaces) to be parameters when defining classes, interfaces and methods. Much like the more familiar formal parameters used in method declarations, type parameters provide a way for you to re-use the same code with different inputs. The difference is that the inputs to formal parameters are values, while the inputs to type parameters are types.