@szkok: jak dasz T to nie ograniczasz się do danego typu klasy, np. Lista może przechowywać różne typy. Swoją drogą tego typu rzeczy są zajebiście objaśnione w dokumentacji oraclowej xD
@szkok: to jest tzw typ generyczny, oznacza, że możesz przypisać typ to klasy/metody/pola, dzięki czemu nie trzeba wykonywać rzutowania lub tworzyć osobnej implementacji dla dodatkowych typów
Komentarz usunięty przez autora
https://docs.oracle.com/javase/tutorial/java/generics/index.html
link do doca wspomnianego przez poprzednika