反射 可以获得类型(类,结构,委托,接口和枚举)的成员,包括方法,属性,构造函数,还可以获得成员的名称,限定符和参数, 可以直接创建对象。
```class Program
{
static void Main(string[] args)
{
Stu s = new Stu() { Name = "张三" };
Stu s2 = new Stu() { Name = "王五" };
//元数据
Type t = s.GetType();
var ps= t.GetProperties();//属性
var ms = t.GetMethods();//方法
ps[0].SetValue(s, "李四");//赋值
Console.WriteLine(s.Name);
Console.WriteLine(ps[0].GetValue(s2));//取值
ms[2].Invoke(s, new object[] { "早上" });
Console.Read();
}
}
class Stu
{
public string Name { get; set; }
public void Say(string time)
{
Console.WriteLine(time+"Hello");
}
}
}
什么是反射
最新推荐文章于 2021-06-25 13:49:18 发布