Gnerics are a new type introduced in 2.0 to declare class that are type independant.
The advantage here is for the same implementation for various types like "string", int we need not have separate functions, which is the case before. With generics we can have a class that has only one implementation identical for all the types, we just need to pass the type as that has to be used in the calculations.