初学C# 
单其中有个反射概念,不理解也不会用
请高手帮忙

解决方案 »

  1.   

    http://msdn.microsoft.com/zh-cn/library/ms173183(VS.80).aspx
    msdn教学
    http://www.cnblogs.com/zhusl118/archive/2008/11/21/1338373.html
    达人写的,我当初就是看这个看会的。简单来说反射其实就是一个类而已,当你想要声明一个类,或者用一个类的某个方法某个属性时候用的。
    例如:你现在知道一个类的名字。叫test,他只是个字符串,你肯定不能用Test t = new ...去new
    所以只能用反射。就是这个意思
      

  2.   

    http://msdn.microsoft.com/zh-cn/library/ms173183(VS.80).aspx 
    MSDN解释http://www.cnblogs.com/zhusl118/archive/2008/11/21/1338373.html
    达人写的,我当初就是看这个看会的。
      

  3.   

    http://www.cnblogs.com/zhusl118/archive/2008/11/21/1338373.htmlhttp://msdn.microsoft.com/zh-cn/library/ms173183(VS.80).aspx这是MSDN的解释
      

  4.   

    简单地说,就是你想获得一个类的对象,但是你只有名字,肯定不能用new去new对象,所以只能用反射。
    例如:你有个字符串,test,有个类也叫test,你想要得到他的实例,就得用反射。具体反射的应用比较广泛,你可以到网上查一查
      

  5.   

    给你顶上去!!虽然哥也学过,但让我说却说不出来!!在封装SDK经常要用
      

  6.   

    个人肤浅理解,反射实际上就是得到程序集中的属性和方法,动态的来创建对象
    实现步骤:
    1,导入using System.Reflection;
    2,Assembly.Load("程序集")加载程序集,返回类型是一个Assembly
    3,   foreach (Type type in assembly.GetTypes())
                {
                    string t = type.Name;
                }
       得到程序集中所有类的名称
    4,Type type = assembly.GetType("程序集.类名");获取当前类的类型
    5,Activator.CreateInstance(type); 创建此类型实例
    6,MethodInfo mInfo = type.GetMethod("方法名");获取当前方法
    7,mInfo.Invoke(null,方法参数);
      

  7.   

    简单的理解,就是在不可能调用或者不可能执行的情况下进行执行。比如:
    string aa = "函数名<变量>";
    你想在字符串里面调用一个动态函数(比如字符串内容是从静态模板中读取),因为是写在字符串里面的,故只用利用反射区执行这个函数,最终结果返回aa在比如:
    string aa="1+2";
    你想要结果等于3,因为是字符型结果必定是12,所以可以利用反射去执行1+2最终结果3返回aa当然反射的用法很多很多很多,举例只是让你理解什么是反射
      

  8.   

    简单的理解,就是在不可能调用或者不可能执行的情况下进行执行。比如:
    string aa = "函数名<变量>";
    你想在字符串里面调用一个动态函数(比如字符串内容是从静态模板中读取),因为是写在字符串里面的,故只用利用反射区执行这个函数,最终结果返回aa在比如:
    string aa="1+2";
    你想要结果等于3,因为是字符型结果必定是12,所以可以利用反射去执行1+2最终结果3返回aa当然反射的用法很多很多很多,举例只是让你理解什么是反射
      

  9.   

    简单的理解,就是在不可能调用或者不可能执行的情况下进行执行。比如:
    string aa = "函数名<变量>";
    你想在字符串里面调用一个动态函数(比如字符串内容是从静态模板中读取),因为是写在字符串里面的,故只用利用反射区执行这个函数,最终结果返回aa在比如:
    string aa="1+2";
    你想要结果等于3,因为是字符型结果必定是12,所以可以利用反射去执行1+2最终结果3返回aa当然反射的用法很多很多很多,举例只是让你理解什么是反射