C#反射调用小DEMO
程序集的源代码:
namespace DesignMode
{
class IOCTest
{
public void TestO()
{
Console.WriteLine("O方法");
} public void TestA(string strA)
{
string res = "A方法||";
Console.WriteLine(res+strA);
} public string TestB()
{
string res="B方法";
Console.WriteLine(res);
return res;
} public int TestC(int num, string strC)
{
if (num == )
{
Console.WriteLine("C方法的C#||" + strC);
return ;
}
else
{
Console.WriteLine("C方法的JAVA||" + strC);
return ;
}
}
}
)
反射调用源代码:
////无参
//var a = Assembly.Load("DesignMode").CreateInstance("DesignMode.IOCTest").GetType().GetMethod("TestO");
////第一个参数表示该方法所在类,第二个参数表示该方法的参数
//a.Invoke(Assembly.Load("DesignMode").CreateInstance("DesignMode.IOCTest"), null); ////一个参数
//var a1 = Assembly.Load("DesignMode").CreateInstance("DesignMode.IOCTest").GetType().GetMethod("TestA");
////第一个参数表示该方法所在类,第二个参数表示该方法的参数
//a1.Invoke(Assembly.Load("DesignMode").CreateInstance("DesignMode.IOCTest"), new object[] { "百事可乐赢大奖" }); ////两个参数有返回值
//var a2 = Assembly.Load("DesignMode").CreateInstance("DesignMode.IOCTest").GetType().GetMethod("TestC");
////第一个参数表示该方法所在类,第二个参数表示该方法的参数
//var res = a2.Invoke(Assembly.Load("DesignMode").CreateInstance("DesignMode.IOCTest"), new object[] {0, "百事可乐赢大奖" }); //无参有返回值
var a3 = Assembly.Load("DesignMode").CreateInstance("DesignMode.IOCTest").GetType().GetMethod("TestB");
//第一个参数表示该方法所在类,第二个参数表示该方法的参数
var res1 = a3.Invoke(Assembly.Load("DesignMode").CreateInstance("DesignMode.IOCTest"), new object[] { });
C#反射调用小DEMO的更多相关文章
- dubbo泛化调用 小demo
前两天刚好有个同事来问是否用过 dubbo泛化 调用,不需要通过指定配置.第一次听到的时候,还是有点懵,但觉得有意思,可以学点东西. 立马百度了,找了demo,这篇比较容易上手(http://www. ...
- java 中的线程池和线程 调用小demo
public class Main { public static void main(String[] args) { try { /// ThreadPoolExecutor executor = ...
- iOS11 SDK 新特性 CoreML 及swift 小demo
github代码 如果本博客对您有帮助,希望可以得到您的赞赏! swift 机器学习Core ML的简单调用小demo.完整代码附上: https://github.com/Liuyubao/LYBC ...
- python 反射调用
因为目前在写一个python的项目,用到了Python的反射机制,所以做一下笔记,把写项目过程中的感悟记下来. 先简单介绍下Demo用到的函数: sys.path 是python的模块的路径集,是一个 ...
- .NET/C# 反射的的性能数据,以及高性能开发建议(反射获取 Attribute 和反射调用方法)——转载
原文链接:https://blog.walterlv.com/post/dotnet-high-performance-reflection-suggestions.html ***** 大家都说反射 ...
- .NET Core/Framework 创建委托以大幅度提高反射调用的性能
都知道反射伤性能,但不得不反射的时候又怎么办呢?当真的被问题逼迫的时候还是能找到解决办法的. 为反射得到的方法创建一个委托,此后调用此委托将能够提高近乎直接调用方法本身的性能.(当然 Emit 也能够 ...
- 原 .NET/C# 反射的的性能数据,以及高性能开发建议(反射获取 Attribute 和反射调用方法)
大家都说反射耗性能,但是到底有多耗性能,哪些反射方法更耗性能:这些问题却没有统一的描述. 本文将用数据说明反射各个方法和替代方法的性能差异,并提供一些反射代码的编写建议.为了解决反射的性能问题,你可以 ...
- RPC框架学习+小Demo实例
一.什么是RPC协议? 全称:远程过程调度协议 效果:使消费者向调用本地方法一样调用远程服务方法,对使用者透明 目前常用:Dubbo.Thirft.Sofa.... 功能: 建立远程通信(socket ...
- Nancy之基于Nancy.Owin的小Demo
前面做了基于Nancy.Hosting.Aspnet和Nancy.Hosting.Self的小Demo 今天我们来做个基于Nancy.Owin的小Demo 开始之前我们来说说什么是Owin和Katan ...
随机推荐
- CCF 201604-2 俄罗斯方块 (模拟)
问题描述 俄罗斯方块是俄罗斯人阿列克谢·帕基特诺夫发明的一款休闲游戏. 游戏在一个15行10列的方格图上进行,方格图上的每一个格子可能已经放置了方块,或者没有放置方块.每一轮,都会有一个新的由4个小方 ...
- 洛谷 - P1593 - 因子和 - 费马小定理
类似的因为模数比较小的坑还有卢卡斯定理那道,也是有时候逆元会不存在,因为整除了.使用一些其他方法避免通过逆元. https://www.luogu.org/fe/problem/P1593 有坑.一定 ...
- Unity3D研究院之IOS&Android收集Log文件(六十二)
开发项目的时候尤其在处理与服务器交互这块,如果服务端程序看不到客户端请求的Log信息,那么无法修改BUG.在Windows上Unity会自动讲Log文件写入本地,但是在IOS和Android上确没有这 ...
- 进击python第二篇:初识
入门拾遗 模块 模块用以导入python增强其功能扩展 1.使用 import [模块名] 导入,应用方式:模块. 函数,例: >>> import math >>> ...
- 去掉UItalbeview横线
一.去掉UItalbeview中所有横线 // self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone; 二.自定义U ...
- jmeter常用的beanshell脚本
时间戳下载文件保存响应内容断言连接数据库解析jsonlist递归创建多级目录 常用内置变量调用cmd文件GUI小命令 时间戳import java.text.SimpleDateFormat;impo ...
- 微信支付——基于laravel框架的php实现
现在经手的几乎每个项目都支持微信支付,简单记录下接入的大致流程. 1.首先商户等申请各种账号,微信支付商户号,APPID,API密钥,Appsecret 2.app端上传支付需要的各个字段 3.后台收 ...
- Jasper_table_resolve multiple copies of table in detail band issue
resolve method: (1) put table component into the Title band / Page Header band / Summary band, not i ...
- springMVC-RESTful支持
RESTful支持 什么是restful? Restful就是一个资源定位及资源操作的风格.不是标准也不是协议,只是一种风格,是对http协议的诠释. 资源定位:互联网所有的事物都是资源,要求url中 ...
- c#学习系列之静态类,静态构造函数,静态成员,静态方法(总之各种静态)
<1>静态类: 静态类与非静态类的重要区别在于静态类不能实例化,也就是说,不能使用 new 关键字创建静态类类型的变量.静态类最大的特点就是共享.在声明一个类时使用static关键字,具有 ...