码迷,mamicode.com
首页 > Windows程序 > 详细

C# 反射小结

时间:2017-09-07 13:23:25      阅读:189      评论:0      收藏:0      [点我收藏+]

标签:小结   load   obj   类型转换   es2017   ima   进入   9.png   target   

废话不多说,直接上代码。

1、typeof(类名):它是一个运算符

eg_1:Type type = typeof(int) ;

eg_2:public class Student

{

Type type = typeof(Student) ;

...................................................

}

2、object.GetType(类的完全限定名):它是一个方法

object 是具体实例时

eg:int iNumber=3 ; Type type =  iNumber.GetType() ;  这个GetType是object对象中的无参实例方法

技术分享

 

object 是Type抽象类时

eg:Type type = Type.GetType() ; 这个GetType是System.Type抽象类的静态方法,有5个重载(即:共有6个方法,注意:还有一个GetTyp无参实例方法

技术分享

 

 他们都有一个共同点,就是返回类型都是Type。

进入主题【反射】:

我知道的反射有两种:

第一种:object objAss = System.Reflection.Assembly.Load("装配件的名称").CreateInstance("要调用类的完全限定名") ;

第二种:object objAct = System.Activator.CreateInstance() ;

他有14个重载,我暂时只研究了两个:

1、无参构造函数:object objAct = System.Activator.CreateInstance(Type类型对象名) ;

2、有参构造函数:object objAct = System.Activator.CreateInstance(Type类型对象名,string[]对象名) ;

下面就可以进行自己想做的操作了。比如:类型转换啊、方法调用啊、属性取值赋值,以上内容乃学习心得,有什么不对的地方还请谅解,多多指正!

 

C# 反射小结

标签:小结   load   obj   类型转换   es2017   ima   进入   9.png   target   

原文地址:http://www.cnblogs.com/niuniu0108/p/7488944.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!