反射重要
来源:互联网 发布:云计算技术应用实例 编辑:程序博客网 时间:2024/06/06 05:24
string value = ConfigurationManager.AppSettings["simpleFA"];
Assembly assembly = Assembly.Load("dll名字");//反射的入口 动态加载dll
foreach (Module module in assembly.GetModules())
{
Console.WriteLine("名称:'{0}'",module.FullyQualifiedName);
}
foreach (Type type in assembly.GetTypes())
{
Console.WriteLine("名称:'{0}'", type.FullName);
}
Type type1 = assembly.GetType(value);//基于类的完整名称,找出类型
object oObject = Activator.CreateInstance(type1);//根据类型,创建对象
IProduct pro = (IProduct)oObject; //强转 可以先is再as
foreach (MethodInfo method in type1.GetMethods())
{
Console.WriteLine("名称:'{0}'", method.Name);
}
MethodInfo method1 = type1.GetMethod("方法名字");
method1.Invoke(oObject, null);//null是方法的参数,无参就是null
//MethodInfo method1 = type1.GetMethod("方法名字",new Type[] { });//函数重载的时候带参数找方法
//MethodInfo method1 = type1.GetMethod("方法名字", new Type[] {typeof(string) });
MethodInfo method2 = type1.GetMethod("private",BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic);//不推荐使用,完成私有方法调用
Assembly assembly = Assembly.Load("dll名字");//反射的入口 动态加载dll
foreach (Module module in assembly.GetModules())
{
Console.WriteLine("名称:'{0}'",module.FullyQualifiedName);
}
foreach (Type type in assembly.GetTypes())
{
Console.WriteLine("名称:'{0}'", type.FullName);
}
Type type1 = assembly.GetType(value);//基于类的完整名称,找出类型
object oObject = Activator.CreateInstance(type1);//根据类型,创建对象
IProduct pro = (IProduct)oObject; //强转 可以先is再as
foreach (MethodInfo method in type1.GetMethods())
{
Console.WriteLine("名称:'{0}'", method.Name);
}
MethodInfo method1 = type1.GetMethod("方法名字");
method1.Invoke(oObject, null);//null是方法的参数,无参就是null
//MethodInfo method1 = type1.GetMethod("方法名字",new Type[] { });//函数重载的时候带参数找方法
//MethodInfo method1 = type1.GetMethod("方法名字", new Type[] {typeof(string) });
MethodInfo method2 = type1.GetMethod("private",BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic);//不推荐使用,完成私有方法调用
阅读全文
0 0
- 反射重要
- JAVA重要知识!反射!
- 黑马程序员--反射(重要)
- IOS反射机制的几个重要函数
- 重要
- 重要!
- 重要
- android中的重要java知识点回顾1(枚举、反射、类加载器等)
- 黑马程序员--反射的一个应用:动态代理(记住第三种方式,重要)
- 反射
- 反射
- 反射
- 反射
- 反射
- 反射
- 反射
- 反射
- 反射
- Android Studio中File对象的FileList()方法返回NULL的问题
- 若你是没信心的程序媛,说明你少了个引路人
- single number
- JAVA面向对象学习笔记(一)
- ContentProvider 使用方法详解
- 反射重要
- 记一次node编写爬虫的经历
- 轮播banner(自带小圆点)
- 算法分析与复杂性理论 第三题 Til the Cows Come Home
- 如何学习javaee在2017年
- mybatis的简单使用步骤
- 0915 星际旅行 砍树 超级树
- 帮我理解下这个静态的代码块吧java
- HDU 6199 dp