new 操作符

CLR要求所有的对象都用new操作符来创建(CLR中所有类型都从System.Object中派生)

Employee e=new Emploee("ConstructorParam1");

new操作符所做的事情是:

1、计算类型及其所有基类型中定义的实例字段需要的字节数;

2、从托管堆中分配指定类型要求的字节数,分配对象内存,分配的所有字节都设为0;

3、初始化对象的“类型对象指针”和“同步索引块”成员;

4、调用类型的实例构造器,向其传入在对new的调用中指定的任何实参;

new执行完所有操作后,返回指向新建对象的一个指针,这个指针保存到变量e中,使其具有Employee类型。

 

new操作符无对应的delete操作符、CLR采用垃圾回收机制,能自动检测到一个对象不再被使用或访问,并自动释放对象的内存。

posted @ 2017-02-08 22:55  绽放的紫罗兰  阅读(134)  评论(0编辑  收藏  举报