zoukankan      html  css  js  c++  java
  • 使用反射动态创建对象及调用对象方法

    namespace ConsoleApplication1
    {
        
    public class ReflectionSample
        
    {
            
    private string firstName = string.Empty;
            
    private string lastName = string.Empty;

            
    public ReflectionSample() { }

            
    public ReflectionSample(string firstName, string lastName)
            
    {
                
    this.firstName = firstName;
                
    this.lastName = lastName;
            }


            
    public string SayHello()
            
    {
                
    return string.Format("Hello {0} {1}"this.firstName, this.lastName);
            }


            
    public static string StaticHello()
            
    {
                
    return string.Format("Hello, I am a static method");
            }

        }

    }


    创建对象,方法一:

    1Assembly asm = Assembly.GetExecutingAssembly();
    2Object obj = asm.CreateInstance("ConsoleApplication1.ReflectionSample"true);

    方法二:

    1ObjectHandle handler = Activator.CreateInstance(null"ConsoleApplication1.ReflectionSample");//第一个参数表示程序集名称,为null表示当前程序集
    2Object obj = handler.Unwrap();

    带参数构造函数的情况:

    创建参数和修改createintance方法:

     1//创建参数:
     2Object[] paras = new Object[2];
     3paras[0= "Jimmy";
     4paras[1= "Zhang";
     5
     6//创建对象:
     7Assembly asm = Assembly.GetExecutingAssembly();
     8Object obj = asm.CreateInstance("ConsoleApplication1.ReflectionSample"true, BindingFlags.Default, null, paras, nullnull);
     9
    10//The second way
    11//ObjectHandle handler = Activator.CreateInstance(null, "ConsoleApplication1.ReflectionSample", true, BindingFlags.Default, null, paras, null, null, null);
    12//Object obj = handler.Unwrap();

    ss

  • 相关阅读:
    使用python执行系统命令——subprocess
    python与数据库交互的模块pymysql
    爬虫实战_爬取豆瓣图书利用csv库存储
    正则表达式_爬取中国古诗词网与豆瓣热门图书
    双文件上传详解
    三.基础部分+asp网站搭建
    二.Google黑客语法
    主动信息收集(二)
    一.搜索引擎如何使用
    记录学习——算法时间复杂度求法
  • 原文地址:https://www.cnblogs.com/goody9807/p/1299736.html
Copyright © 2011-2022 走看看