反射的使用
namespace 反射 { class Program { static void Main(string[] args) { Assembly ass= Assembly.Load(@"反射");//找到程序集 var type = ass.GetType("反射.Reflections");//找到类 var method = type.GetMethod("OutPut");//找到类下面的方法 object instance = Activator.CreateInstance(type);//创建类的实例 method.Invoke(instance, new object[] { "执行了" });//调用方法 Console.ReadKey(); } } public class Reflections { public void OutPut(string str) { Console.WriteLine("反射"+str); } } }
var method = type.GetMethod("OutPut");改成var method = type.GetMethod("OutPut", BindingFlags.Instance | BindingFlags.NonPublic);还可以调用类里面的私有方法