Generics allow you to define placeholders for exact types in definitions for classes, interfaces and/or methods.
- Class (and structure) generics
- Interface generics
- Method generics
- Covariance and contravariance
Generics became available with:
- .NET Framework 2.0 (and version 2.0 of the compact framework).
- Java in version 5.
- Common Lisp since it was standardised …