读书笔记<.NET框架程序设计> 类型基础
基类型
- CLR要求每个类型最终都要继承自System.Object类型
- CLR要求所有的对象都要用new操作符来创建
- new操作符所执行的工作:
- 从托管堆(managed heap)中分配指定类型所需要数量的字节来作为存储其对象的内存空间。
- 初始化对象的附加成员(overhead members)。每一个对象实例都有两个附加成员。其中第一个成员为指向类型方法表的指针,第二个成员为SyncBlockIndex。
- 传入new操作符中指定的参数,调用类型的实例构造器。虽然大多数语言在编译构造器时都会要求它们调用基类型中相应的构造器,但CLR本身没有这样的要求。
- new完成所以这些操作后,将返回一个指向新创建对象的引用。
- new操作符所执行的工作:
类型转换
-
C#不需要任何特殊的语法就可以将对象转换为其任何一个基类型,因为转换为基类型被认为是安全的隐式操作。然而在将对象转换为它的任何派生类时,C#要求进行显式转型.