标签:
1. 概述
本章讲述使用 类型 和 CLR 时需要掌握的一些基础知识。
2. 名词解释
3. 主要内容
3.1 所有类型都从System.Object 派生
所有对象都用new操作符来创建,步骤如下:
① 计算类型及其所有基类型中定义的实例字段需要的字节数。包括两个额外成员:类型对象指针 和 同步块索引。
② 从托管堆中分配指定类型要求的字节数,从而分配对象的内存,分配的所有字节都设为零(0)。
③ 初始化对象的 类型对象指针 和 同步块索引。
④ 调用类型的实例构造器,向其传入在对new的调用中指定的任何实参。
3.2 类型转换
CLR具有类型安全性。
使用C#的 is 和 as 操作符来转型。
is 检查一个对象是否兼容于指定的类型。永不会抛出异常。
as 类似强制转换。永不会抛出异常。转换失败会返回null。
3.3 命名空间和程序集
两者不一定是相关的。同一个命名空间中的各个类型可能在不同的程序集中实现。反之,同一个程序集中,也可能包含不同命名空间的类型。
3.4 运行时的相互联系
线程栈和托管堆的分配情况。
4. 总结
概述了类型的基础和堆栈分配情况。
标签:
原文地址:http://www.cnblogs.com/stone_lv/p/4292927.html