- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
 
        查看更多 
         
       
 
      
        反射 异常本章目标理解反射的概念了解Type中的常用方法 掌握如何通过类名创建类的实例掌握异常的概念了解异常类层次结构掌握异常的处理反射(Reflection )概念:反射(Reflection)是.NET中的重要机制,通过反射,可以在运行时获得.NET中每一个类型(包括类、结构、委托、接口和枚举等)的成员,包括方法、属性、事件,以及构造函数等。还可以获得每个成员的名称、限定符和参数等。关于反射?反射的概念是由Smith在1982年首次提出的,主要是指程序可以访问、检测和修改它本身状态或行为的一种能力。这一概念的提出很快引发了计算机科学领域关于应用反射性的研究。它首先被程序语言的设计领域所采用,并在Lisp和面向对象方面取得了成绩。其中LEAD/LEAD++ 、OpenC++ 、MetaXa和OpenJava等就是基于反射机制的语言。最近,反射机制也被应用到了视窗系统、操作系统和文件系统中。 应用程序结构IL代码经过JIT编译器及时编译后生成可执行的应用,这种可执行的应用程序结构主要有以下部分组成 应用程序域---〉程序集----〉模块-----〉类型------〉成员应用程序域程序集程序集程序集Class A模块AClass B模块B成员模块C管理应用程序公共语言运行库加载器管理应用程序域,这种管理包括将每个程序集加载到相应的应用程序域以及控制每个程序集中类型层次结构的内存布局。 程序集包含模块,而模块包含类型,类型又包含成员 跟反射有什么联系? 反射则提供了封装程序集、模块和类型的对象。我们可以使用反射动态地创建类型的实例,将类型绑定到现有对象或从现有对象中获取类型,然后调用类型的方法或访问其字段和属性 程序集1.程序集由程序集元数据、类型元数据、中间语言代码和资源构成。2. 在一个程序集中可以有不同的命名空间,一个命名空间也可以分布在多个程序集中。3. 程序集分为私有程序集和共享程序集。在引用私有程序集时,如果程序集是个exe文件,不能用添加引用的方式引用它,应该把它手动拷贝到目标目录下。如果是.dll文件可以使用添加引用的方式,引用之后系统会自动在目标目录下创建该程序集的副本。反射的用途 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了解参数的名称、数据类型、是输入参数还是输出参数,以及参数在方法签名中的位置等。 采用的命名空间using System;using System.Reflection;相关的类Type --类型有关Assembly --程序集有关MethodInfo --方法有关FiedInfo --字段有关PropertyInfo --属性有关ParameterInfo --参数有关欲知详情,请查阅MSDNAssembly.CreateInstance()Activator.CreateInstance()区别 这两个类的静态方法都可以创建对象实例。有什么区别呢?Assembly.CreateInstance 方法 (String)使用区分大小写的有哪些信誉好的足球投注网站,从此程序集中查找指定的类型,然后使用系统激活器创建它的实例。 Activator.CreateInstance 方法 (Type)使用与指定参数匹配程度最高的构造函数来创建指定类型的实例。异常概念:程序运行时的错误。为什么要进行异常处理:优秀而健壮的程序很少会发生崩溃。如果在编程时是程序能够从可能导致错误的情况中恢复到正
       
 
       有哪些信誉好的足球投注网站
有哪些信誉好的足球投注网站 
  
       
      
文档评论(0)