Generiniai tipai leidžia rašyti klases ir metodus, parametrizuotus tipo, suteikiant tipo saugumą ir pakartotinį panaudojimą be kodo dubliavimo ar kastų. Apribojimai riboja, kokius tipus gali būti generiniu parametru, leidžiant saugiai naudoti jų narius. Generiniai tipai yra plačiai naudojami C# (visa kolekcijų biblioteka juos naudoja).
Problema, kurią sprendžia generiniai tipai
=> arr[i];
=> arr[i];
x = Get([] { , , }, );
