## Question

What is the output from the following code

**int** i = 3;
**object** boxed = i;
i = 5;
Console.WriteLine (boxed);

Click to view the answer3

## Note

Boxing copies the value-type instance into the new created object.

Unboxing copies the contents of the object to a value-type instance.

In the code above, changing the value of i doesn't change its previously boxed copy:

## Demo

using System;
class MainClass/* w ww .jav a 2s .co m*/
{
public static void Main(**string**[] args)
{
**int** i = 3;
**object** boxed = i;
i = 5;
Console.WriteLine (boxed); // 3
}
}

## Result

## Related Topic