CLR VIA C#学习笔记
CLR(公共语言运行库,Common Language Runtime)和Java虚拟机一样也是一个运行时环境,核心功能包括:内存管理、程序集加载、安全性、异常处理和线程同步,可由面向CLR的所有语言使用。并保证应用和底层操作系统之间必要的分离。
第四章:类型基础
4.1每个类都继承Sys.Object类
所有对象用new创建一个对象,返回新建对象引用指针
4.2类型转换
转换原理:
CLR总是知道对象的类型是什么,用GetType方法可以得到对象的类型。类可以隐式转换回基类,再显式转换回实际类。
隐式转换:派生类转换为基类
代码:Object o=new Employee;//进行隐式转换,派生类转换为Object类
显式转换:再由基类转换回派生类,运行时可能会失败
Employee e=(Employee) o;//进行显式转换,基本类转换为派生类
考虑到类型安全,类型转换不能转换为派生类和其他类
用操作符实现类型转换
is:把类型转换为其他类型,然后返回BOOL类型
as:把对象转型为其他类型,不成功返回NULL