01---.NET中的装箱/拆箱
1、.NET中的类型:基元类型(Primitive Type)、值类型(Value Type)、引用类型(Reference Type)
基元类型:编译器能直接支持的数据类型,基元类型能直接映射到编程语言(例如FCL)存在的类型。例如:C#中的int --->System.Int32
值类型、引用类型:所有继承自System.ValueType的类型都是值类型,而其他类型都是引用类型
值类型和引用类型的区别:
1、变量的赋值。 值类型的变量直接保存真实的数据符文,引用类存的是对象的引用
2、内存分配。值类型在线程栈上分配,引用类型的的对象将在堆上分配内存
3、值类型都继承自System.ValueType,而System.ValueType继承自System.Object,并重新实现了基类System.Object的一个虚方法Equals,而引用类型并没有重写
2、装箱、拆箱理解:
粗略的说:装箱是将值类型转换为引用类型 ;拆箱是将引用类型转换为值类型。
System.ValueType