zoukankan      html  css  js  c++  java
  • 反射学习笔记(一)

    1、什么是反射
        Reflection,中文翻译为反射。
        这是.Net中获取运行时类型信息的方式,.Net的应用程序由几个部分:‘程序集(Assembly)’、‘模块(Module)’、‘类型(class)’组成,而反射提供一种编程的方式,让程序员可以在程序运行期获得这几个组成部分的相关信息,例如:

        Assembly类可以获得正在运行的装配件信息,也可以动态的加载装配件,以及在装配件中查找类型信息,并创建该类型的实例。
    Type类可以获得对象的类型信息,此信息包含对象的所有要素:方法、构造器、属性等等,通过Type类可以得到这些要素的信息,并且调用之。
    MethodInfo包含方法的信息,通过这个类可以得到方法的名称、参数、返回值等,并且可以调用之。
    诸如此类,还有FieldInfo、EventInfo等等,这些类都包含在System.Reflection命名空间下。

    2、装配件的概念
          装配件是.Net应用程序执行的最小单位,编译出来的.dll、.exe都是装配件。装配件就像一个房子,住着这种命名空间的类,方法等。
         一般要调用装配件里的类前,需要在项目中添加对装配件的引用,如果使用反射,则可以在运行的时候,找到装配件,不用添加引用。

    运行期间得到类型,就是晚绑定的缺点是影响效率,优点是提高程序设计的便利性,更好的实现复用,扩展等功能。具体有多少好处,我现在还参不透,慢慢补充。

  • 相关阅读:
    继承
    类和对象
    Scanner类
    面向对象思想
    final关键字
    The difference between text mode and binary mode with file streams
    Linux下常见权限操作相关命令
    Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext
    手动运行jar包,指定配置文件
    jdk 1.8.0_131 Class JavaLaunchHelper is implemented
  • 原文地址:https://www.cnblogs.com/yonglianglee/p/727774.html
Copyright © 2011-2022 走看看