元数据和反射
(1)元数据(metadata):程序及其类型的数据
(2)反射:运行的程序查看其元数据的行为
Type类
作用:获得反射
特点:抽象类,不能用来实例化对象
程序中的每个类都有一个对应的Type对象,存储这个类的信息(有哪些属性成员等等)
获取Type:
System.Type t = v.GetType();
Type类的常用属性:
(1)Name:类名
(2)Namespace:命名空间
(3)Assembly:程序集类型
Type类获取类的属性,只能获取public:
System.Type t = v.GetType();
FieldInfo[] fs = t.GetFields();//using System.Reflection;
foreach (FieldInfo f in fs) {
Debug.Log(f);
}
另外还有一个GetProperties,用于获取get set访问的属性:
public string name{get;set;}
GetFields用于:
public string name;
Type获取类中的方法:
System.Type t = v.GetType();
MethodInfo[] ms = t.GetMethods();
foreach (MethodInfo m in ms) {
Debug.Log(m);
}
程序集:
获取类的程序集:
Assembly asse = people1.GetType().Assembly;
Debug.Log(asse);
加载程序集: