装箱和拆箱
  (1)装箱:是将一个值类型的数据隐式转换成一个对象类型的数据。把一个值类型装箱是创建一个object类型的实例,并把该值类型的值赋给这个object对象。
  Eg:
  <span style="font-family:KaiTi_GB2312;font-size:18px;"><strong>Int I = 10;
  Object obj = i;             //隐式转换装箱</strong></span>
  <span style="font-family:KaiTi_GB2312;font-size:18px;"><strong>Int I = 10;
  Object obj = (object)i;      //显式转换装箱</strong></span>
  分析:i及其值10是在栈空间中分配的,obj是引用类型变量,也是在栈空间中分配的,i装箱后变为引用类型,在堆空间中分配相应的空间,obj中包含地址。
  (2)拆箱:将引用类型的数据显式转换成一个值类型数据。分为两步:首先检查对象实例,确保它是给定值类型的一个装箱值,然后把实例类型复制到值类型数据中。
  Eg:
  Object obj = 10;
  Int I = (int)obj;            //显示转换拆箱
  (3)区别:装箱隐式或显式转换均可,拆箱只能是显式转换。