Boxing permits any value type to be implicitly converted to type object or to any interface type implemented by value type. Boxing is a process in which object instances are created and copy values into that instance.
Unboxing is vice versa of boxing operation where the value is copied