C#提供了两种方法将值类型链接到引用类型,反之亦然。这两种链接方法分别称为装箱和装箱,其中装箱用于将值类型转换为对象类型,而装箱是将对象类型转换为值类型。
以下是装箱和拆箱之间的重要区别。
序号 | 键 | 拳击 | 拆箱 |
---|---|---|---|
1 | 实作 | 装箱使对象类型称为值类型。 | 取消装箱基本上是处理装箱对象的检索值。 |
2 | 存储 | 在装箱的情况下,将存储在堆栈中的值复制到存储在堆内存中的对象。 | 另一方面,在取消装箱的情况下,将存储在堆内存中的对象的值复制到存储在堆栈中的值类型。 |
3 | 转换类型 | 装箱一般称为隐式转换。 | 拆箱是指显式转换。 |
JavaTester.java
public class JavaTester { public static void main(String[] args){ int val = 119; //拳击 Object o = val; //更改val的值 val = 120; //拆箱 int x = (int)o; System.out.println("Value of x is {0}"+ x); System.out.println("Value type of val is {0}"+val); System.out.println("Object type of val is {0}"+o); } }
输出结果
Value of x is {0}119 Value type of val is {0}120 Object type of val is {0}119