zoukankan      html  css  js  c++  java
  • C#复习反射

    反射中常用方法:

     1 //获取对象类型
     2 One one = new One();
     3 Type t = one.GetType();
     4 
     5 //动态加载
     6 Assembly a = Assembly.LoadFile(path);
     7 //获取所有公共类
     8 Type[] _tys = assembly.GetExportedTypes();
     9 
    10 //获取所有类
    11 Type[] types = assembly.GetTypes();
    12 
    13 //创建对象实例
    14 A a = Activator.CreateInstance(type[0]) as A;
    15 assembly.GetType("类名");
    16 
    17 MemberInfo[] ms = t.GetMembers();//获取所有public方法
    18 FieldInfo[] fs = t.GetFields();//获取所有的public字段
    19 PropertyInfo[] ps = t.GetProperties();//获取所有属性
    20 
    21 MethodInfo m = t.GetMethod("方法名");//获取指定public方法
    22 FieldInfo f = t.GetField("字段名");//获取指定public字段
    23 
    24 //获取私有字段或方法的时候在参数中加上如下参数即可
    25 BindingFlags.Instance | BindingFlags.NonPublic
    26 
    27 //执行方法
    28 m.Invoke(对象实例,参数);//非静态方法执行
    29 m.Invoke(null,参数);//静态方法执行

    小弟菜鸟,请大神们指教

  • 相关阅读:
    初识STM32标准库
    自己写库—构建库函数雏形
    使用寄存器点亮LED等
    新建工程---寄存器版
    什么是寄存器
    初识STM32
    ST-LINK驱动的安装
    MDK5使用技巧
    开发环境的搭建
    1行Python代码制作动态二维码
  • 原文地址:https://www.cnblogs.com/liyajie/p/4501098.html
Copyright © 2011-2022 走看看