C# is a type safe language. This implies that an object
should have its type defined prior to an assignment of any value to it.
Generics, also known as parameterized types or parametric polymorphism, allow
us to have type parameters on our types. These generic types are assigned to a
specific type at the time of instantiation of the type at runtime. This deferred
instantiation of a generic type and its late binding to a specific type
promotes its usage on any type. This article has discussed Generics with code
illustrations wherever necessary. Happy reading!