摘要:
我们知道,CLR要求每个类型最终都从System.Object类型派生。而Object类提供了几个实例方法:Equals(),GetHashCode(),ToString(),GetType(). 当我们new一个对象时,CLR所做的工作如下:(1)计算类型及其所有基类型中定义的所有实例字段需要的字节数,其中包括两个额外的成员:“类型对象指针”和“同步索引块”;(2)从托管堆上分配指定类型所要求的字节数,从而分配对象的内存,分配的所有字节都设为0;(3)初始化对象的“类型对象指针”和“同步索引块”(4)调用类型的实例构造器,构造器负责实例化类型中的字段,并最终调用System.Objec... 阅读全文