反射的简单应用
作者 jlgzw
使用反射在运行时创建类型实例,并调用和访问这些实例。
//--------------------------------------------------------------------------------------------------------------
// ReflectType.cs @ 2007 by jl gzw
//--------------------------------------------------------------------------------------------------------------
using System;
using System.Reflection;
using System.Reflection.Emit;
namespace ReflectType
{
static class ReflectType
{
static void Main()
{
//使用string类型
Type type = typeof(string);
//string类构造函数参数类型
Type[] aTypes = new Type[] { typeof(char),typeof(int) };
//string类构造函数参数
object[] aParams = new object[] { 'c', 10 };
object Obj = null;
ConstructorInfo myctor = type.GetConstructor(aTypes);
Obj = myctor.Invoke(aParams);
Console.WriteLine("构造了字符串: {0}",Obj);
object[] Arg = {Obj ,"这是一个连接字符串"};
object str = type.InvokeMember("Concat", BindingFlags.InvokeMethod, null,null,Arg);
Console.WriteLine("使用string.Concat方法连接后的字符串: {0}",str);
Console.Read();
}
}
}