Generika vám umožňují psát třídy, rozhraní a metody, které pracují s parametrem typu určeným volajícím — poskytují bezpečnost typů v čase kompilace a eliminují potřebu přetypování. Jsou základem Collections Framework a znovupoužitelných knihoven.
Problém, který generika řeší
();
list.add();
list.add();
(String) list.get();
List<String> list = <>();
list.add();
list.add();
list.get();
