反射描述了在运行过程中检查和处理程序元素的功能。反射可以完成以下任务:
- 枚举类型的成员;
- 实例化新对象;
- 执行对象的成员;
- 查找类型的信息;
- 查询程序集的信息;
- 检查应用于某种类型的自定义特性;
- 创建和编译新程序集。
1、Type类
Type类是一个抽象的基类。获取给定类型的Type引用的两种方法。
- 使用c#的typeof运算符。其参数是类型的名称(不放在引号中);
例:typeof(int) typeof(string) typeof(Class) - 使用GetType()方法,所有的类都是继承自Object类(值类型实际上也是如此),其具有该方法。
例:对象.GetType() Class class = new Class() class.GetType()