C#反射之应用

目录

 

前言

反射

优点:

缺点:


前言

做过重构的人都知道,在重构中要用到反射,什么时反射有很多人并不清楚,为了了解一下这个知识点,现在总结一下。

反射

所谓反射就是在.net  Framework中提供的一种机制,在程序运行时能动态的加载程序集(Assembly),加载类型,创建对象,调用成员。

程序集其实就是我们常见的一些DLL文件,从这些文件中获取信息,说白了就是调用这个方法,程序集包括(类型元数据,程序集元数据,IL代码,资源文件)程序集元数据中有很多信息,比如公司明,版本号,命名空间等等,程序集在用之前已经是被.net编译好的。程序集包括exe和dll文件。

优点:

1、反射提高了程序的灵活性和扩展性。

2、降低耦合性,提高自适应能力。

3、它允许程序创建和控制任何类的对象,无需提前硬编码目标类。

缺点:

1、性能问题:使用反射基本上是一种解释操作,用于字段和方法接入时要远慢于直接代码。因此反射机制主要应用在对灵活性和拓展性要求很高的系统框架上,普通程序不建议使用。

2、使用反射会模糊程序内部逻辑;程序员希望在源代码中看到程序的逻辑,反射却绕过了源代码的技术,因而会带来维护的问题,反射代码比相应的直接代码更复杂。

 

可以从这里看出,里面包括很多的数据,其中包括了一些修饰符,对象,状态之类的数据。以及返回类型。

 

发布了137 篇原创文章 · 获赞 55 · 访问量 16万+

猜你喜欢

转载自blog.csdn.net/yyp0304Devin/article/details/91045073