Cp4类型基础
Object类型
Object是所有类型的基类,有Equals,GetHashCode,ToString,GetType四个公共方法,其中GetHashCode,ToString可以override. 受保护方法有MemeberwiseClone,Finalize.
所有对象必须用new来创建,引用可以看成是安全的指针,指向真实对象在内存中的地址。
类型转换
隐式转换,显示转换,类型伪装
C#操作符is as
命名空间
结合现实的行政划分理解就很容易;using导入命名空间;别名来避免冲突;
命名空间和程序集不是一一对应,可能一个命名空间对应多个程序集,也可能一个程序集里有多个命名空间。
运行时的相互联系(好好理解)
书上的例子对程序执行过程解释的很清楚,这部分Richter讲的真的很精彩。
源代码,IL,JIT,线程栈,实参,局部变量,实参,变量,方法,静态方法,静态变量。
只是翻译上,我认为类型对象应该简单翻译成类,对象还是翻译成对象,这样有助于区分两者。
类本质上也是对象,通过System.Type引用它,这也是为什么可以使用GetType获取类型的原因。