System.Reflection.Assembly
System.Reflection.MemberInfo
System.Reflection.EventInfo
System.Reflection.FieldInfo
System.Reflection.MethodBase
System.Reflection.ConstructorInfo
System.Reflection.MethodInfo
System.Reflection.PropertyInfo
System.Type
以下是上面几个类的使用方法:
(1)使用 Assembly 定义和加载程序集,加载在程序集清单中列出模块,以及从此程序集中查找类型并创建该类型的实例。
(2)使用 Module 了解包含模块的程序集以及模块中的类等,还可以获取在模块上定义的所有全局方法或其他特定的非全局方法。
(3)使用 ConstructorInfo 了解构造函数的名称、参数、访问修饰符(如 pulic 或 private)和实现详细信息(如 abstract 或 virtual)等。使用 Type 的 GetConstructors 或 GetConstructor 方法来调用特定的构造函数。
(4)使用 MethodInfo 了解方法的名称、返回类型、参数、访问修饰符(如 pulic 或 private)和实现详细信息(如 abstract 或 virtual)等。使用 Type 的 GetMethods 或 GetMethod 方法来调用特定的方法。
(5)使用 FiedInfo 了解字段的名称、访问修饰符(如 public 或 private)和实现详细信息(如 static)等,并获取或设置字段值。
(6)使用 EventInfo 了解事件的名称、事件处理程序数据类型、自定义属性、声明类型和反射类型等,添加或移除事件处理程序。
(7)使用 PropertyInfo 了解属性的名称、数据类型、声明类型、反射类型和只读或可写状态等,获取或设置属性值。
(8)使用 ParameterInfo 了解参数的名称、数据类型、是输入参数还是输出参数,以及参数在方法签名中的位置等。