标签:
一.反射的作用:
查看和遍历类型和类型的元数据;动态创建类型实例,动态的调用所创建的实例方法和字段,属性,迟绑定方法和属性。
二.获取Type对象实例:
反射的核心类-Type,封装了关于类型的元数据,是进行反射的入口。当获得了类型的Type对象后,可以根据Type提供的书信和方法获得这个类型的一切信息,包括字段,属性,事件,参数,构造函数等。
static void Main(string[] args) { //1.使用Type类提供的静态方法GetType() Type t = Type.GetType("System.IO.Stream"); Console.WriteLine(t.ToString()); //2.使用typeof操作符 Type t1 = typeof(System.IO.Stream); Console.WriteLine(t1); //3.通过类型实例获得Type对象 string name = "字符串类型"; Type t2 = name.GetType(); Console.WriteLine(t2); //新建一个测试项目类库,命名Testdll,添加到项目引 Class1 c1 = new Class1(); Type t3 = c1.GetType(); Console.WriteLine(c1); }
三.Type类型和System.Reflection命名空间组织及结构。
在上述代码中添加一下代码:
Console.WriteLine(t3.Name); //当前成员名称 Console.WriteLine(t3.FullName); //类型全名 Console.WriteLine(t3.Namespace);//获取命名空间 Console.WriteLine(t3.BaseType); //在.NET中映射类型的引用 Console.WriteLine(t3.Attributes);//获取与 System.Type 关联的属性。 //......Type提供了用于获取类型的基本信息。如:当前对象类型,命名空间,对象和命名空间全名,是否公开等...可以F12到Type中查看。
标签:
原文地址:http://blog.csdn.net/heyangyi_19940703/article/details/51338233