加入收藏 | 设为首页 | 会员中心 | 我要投稿 银川站长网 (https://www.0951zz.com/)- 云通信、基础存储、云上网络、机器学习、视觉智能!
当前位置: 首页 > 综合聚焦 > 编程要点 > 语言 > 正文

C#反射的几种应用

发布时间:2023-03-23 13:42:48 所属栏目:语言 来源:
导读:对于反射贫道也是很陌生的,所以趁现在有时间就把反射看了一下,记下笔记!!!反射的定义:反射(Reflection)是.NET中的重要机制,通过放射,可以在运行时获得.NET中每一个类型(包括类、结构、委托、接口和枚举等

对于反射贫道也是很陌生的,所以趁现在有时间就把反射看了一下,记下笔记!!!

反射的定义:反射(Reflection)是.NET中的重要机制,通过放射,可以在运行时获得.NET中每一个类型(包括类、结构、委托、接口和枚举等)的成员,包括方法、属性、事件,以及构造函数等。还可以获得每个成员的名称、限定符和参数等。有了反射,即可对每一个类型了如指掌。如果获得了构造函数的信息,即可直接创建对象,即使这个对象的类型在编译时还不知道。

 1,导入using System.Reflection;

 2,Assembly.Load("程序集")//Assembly.LoadFile("外部调用的动态库")加载程序集,返回类型是一个Assembly

 3,  foreach (Type type in assembly.GetTypes())

           {

               string t = type.Name;

           }

  得到程序集中所有类的名称

 4,Type type = assembly.GetType("程序集.类名");获取当前类的类型

 5,Activator.CreateInstance(type); 创建此类型实例

 6,MethodInfo mInfo = type.GetMethod("方法名");获取当前方法

 7,mInfo.Invoke(null,方法参数);

 这些是反射的一些基本应用。

(编辑:银川站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!