5.1.2 引用类型

符合以下情况之一者,编译器可以自动实施隐式类型转换,并且不需要运行时类型检查:

❑任意引用类型到object类型的转换;

❑派生类型到基类型的转换;

❑派生类型到其实现的接口类型的转换;

❑派生接口类型到基接口类型的转换;

❑数组类型到System.Array类型的转换;

❑委托类型到System.Delegate类型的转换;

❑null类型到所有引用类型的转换。

对于引用类型来说,无论是隐式还是显式的类型转换,改变的仅仅是引用的类型,至于该引用指向的对象的类型以及对象的值都是保持不变的。如图5-1所示,它实际改变的是变量1的类型,而引用的对象“对象1”则保持类型和值不变。

5.1.2 引用类型 - 图1

图 5-1 引用类型