- 静态成员不能被类的对象直接调用,它的值会被所有对象共享。
- 不能在静态方法中调用非静态的属性或方法。
- 泛型类似于C++中的模板
下面是一个实例,结合泛型和反射功能,可以使我们通过字符串查找类中的变量成员并赋值。
比如当我们从数据库或XML文件中读取数据的时候,即可通过字段名称赋值,实现自动序列化。
using System.Collections.Generic;
public static void SetObject1<T>(T obj, string str, object value){
System.Reflection.FieldInfo info=obj.GetType().GetField(str);
}
Player p=new Player();
SetObject1<Player>(p, "name", "goodman");
SetObject1<Player>(p, "id", 100);