C#高级教程
2018-03-23 08:19
218 查看
反射指程序可以访问、检测和修改它本身状态或行为的一种能力。程序集包含模块,而模块包含类型,类型又包含成员。反射则提供了封装程序集、模块和类型的对象。您可以使用反射动态的创建类型的实例,将类型绑定到现有对象,或从现有对象中获取类型。然后可以调用其类型的方法或访问其字段属性。
优缺点:
1.使用反射基本上是一种解释操作,用于字段和方法接入时要远慢于直接代码。因此反射机制主要应用在对灵活性和扩展性要求很高的系统框架上,普通程序不建议使用。
2.使用反射会模糊程序内部逻辑,程序员希望在源代码中看到程序的逻辑,反射却绕过了源代码的技术,因而会带来维护的问题,反射代码比相应的直接代码更复杂。
反射(Reflection)的用途
允许在运行时查看各种信息
允许审查集合中的各种类型,以及实例化这些类型
允许延迟绑定的方法和属性
允许在运行时创建新类型,然后使用这些类型执行一些任务
优缺点:
1.使用反射基本上是一种解释操作,用于字段和方法接入时要远慢于直接代码。因此反射机制主要应用在对灵活性和扩展性要求很高的系统框架上,普通程序不建议使用。
2.使用反射会模糊程序内部逻辑,程序员希望在源代码中看到程序的逻辑,反射却绕过了源代码的技术,因而会带来维护的问题,反射代码比相应的直接代码更复杂。
反射(Reflection)的用途
允许在运行时查看各种信息
允许审查集合中的各种类型,以及实例化这些类型
允许延迟绑定的方法和属性
允许在运行时创建新类型,然后使用这些类型执行一些任务
相关文章推荐
- C#并行编程高级教程 20 个 C# 热点问题解答
- 推荐一本好的c#高级程序设计教程
- 高级电子版 ---- C# 图解教程 ,PDF 电子书
- 菜鸟教程C#高级教程
- 高级电子版 ---- C# 图解教程 ,PDF 电子书
- C# 给线程传数据的两种方法【C#高级教程整理】
- 《C#高级教程》学习笔记7
- 数码照片的JPG文件高级信息(用C#读取图片的EXIF信息)-.NET教程,C#语言
- 数据结构与算法(C#实现)系列---演示篇(三)_C#教程
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(五)实现2D人物动画②
- C#基础概念二十五问_C#教程
- C#中接口(interface)的理解_C#教程
- 数据结构与算法(C#实现)系列---树(三)_C#教程
- 数据结构与算法(C#实现)系列---树(三)_C#教程
- C#中的数组和C++中数组的区别_C#教程
- 基于C#的接口基础教程之四_C#教程
- 基于C#的接口基础教程之三_C#教程
- EF三种编程方式详细图文教程(C#+EF)之Code First
- 理解C#中的string类型_C#教程
- C#教程第5讲方法1(学习笔记)