zoukankan      html  css  js  c++  java
  • C#反射的应用【转】

    摘要: 对于反射贫道也是很陌生的,所以趁现在有时间就把反射看了一下,记下笔记!!! 初始听说反射是可以动态的调用程序集,并从中来获取相应的方法和属性,感觉比较神奇,,, 反射的定义:反射(Reflection)是.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,方法参数);

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

      以上只是对于反射的基本学习,以后还要多看,多练习啊!!!

  • 相关阅读:
    iBatis——自动生成DAO层接口提供操作函数(详解)
    【Spring Boot项目】Win7+JDK8+Tomcat8环境下的War包部署
    MySQL使用小记
    DB迁移:从SQL Server 2005到MySQL
    【文章学习】监控网页卡顿、崩溃
    为什么执行x in range(y)如此之快
    python笔试题(三)
    python笔试题(二)
    python笔试题(-)
    rest-framework(2)
  • 原文地址:https://www.cnblogs.com/zhouyunbaosujina/p/3292115.html
Copyright © 2011-2022 走看看