SportsCar sc=new SportsCar();Type t=sc.GetType();显而易见,要想使用这个方法,必须得到类型的编译时信息(这里是SportsCar类)。由于无法对自定义的程序进行编译,类似ildasm.exe的工具并没有通过直接调用System.Object.GetType()来得到每个类型的类型信息为了以更灵活的方式得到类型信息,我们可以调用System.Type类的静态成员GetType(),然后指定类型的完全限定名称,采用这个方法,我们不需要得到正从中提到元数据的类型编译时信息.其它用红色标出的话不解,大致我估计是读写冲突的问题!但不明白区别在哪!?

解决方案 »

  1.   

    不能加粗,原句是:
    Type t=sc.GetType();
      

  2.   

    Type t=sc.GetType()
    这种用法是说明GetType()是System.Object下的成员函数 对象编译后才会明确类型信息System.Type.GetType()是Type 下的 类型创建的时候会向System.Type注册。(这涉及到.net底层的运行机制)
    那么System.Type.GetType()就可以直接得到类型了。个人看法。
      

  3.   

    “必须得到类型的编译时信息(这里是SportsCar类)。”什么叫“编译时信息(这里是SportsCar类)。”“由于无法对自定义的程序集进行编译”????别扭,怎么解释
      

  4.   

    GetType(): 获取元数据
    在.NET中,反射是一个运行库类型发现的过程。通过反射,可以得到一个给定程序集所包含的所有类型的列表,这个列表包括给定类型中定义的方法、字段、属性和事件。也可以动态地发现给定类(或结构)支持的接口、方法的参数和其他相关细节(基类、命名空间、清单数据等)。对于反射,这里就不多做介绍。GetType()方法,返回的是一个System.Type类型,一旦获取了类型的Type信息(实质上是类型元数据)我们就相当于得到了该类型的所有信息,包括接口定义,方法参数等等。一般来说有三种方式得到类型的Type信息:
    使用System.Object定义的GetType()方法,它返回一个表示当前对象元数据的Type信息。要使用这个方法,必须得到类型的编译时信息,并且需要先建立一个实例。 
    使用System.Type.GetType()得到Type引用,里面包含三个非常有用的静态函数,可通过传入类型的完全限定名来获取Type信息。 
    最后一个获取类型信息的方法是使用C# typeof运算符运算符。类似Type.GetType(),使用typeof运算符,我们不需要先建立一个实例来提取类型信息。但是仍然需要知道类型的编译时信息。 
      

  5.   

    世界500强招聘.NET开发,工作地点在重庆,有意者请联系我MSN:[email protected]
      

  6.   

    只求一句“类型的编译时信息”怎么理解!或者讲下object.gettype和system.type.gettype区别除了前者需要建立实例外,还有什么区别!
      

  7.   


    1.任何信息被任何主体去理解的时候,主体都会把输入的信息转化为本身能理解的元素。在计算机里,编译的过程就是这样,将高级代码转化成电脑能识别的信息,或者再进行简单加工就能识别的信息(c#的编译器就是先将源程序转化为IIL,然后这种中间语言在不同的电脑上最中可以很快的转化成电脑能识别的0,1)
    2.在获取对象的类型信息的时候,就显然是要获取经过计算机“理解”之后的信息,也就是“编译时信息”,因为在这个时候源程序所描述的内容完全被计算机所"理解"。第二个问题的区别上msdn上可以查得第一个问题属个人看法,纯属交流。
      

  8.   

    SportsCar 这个类是不是.net 写的哦 
      

  9.   

    类型编译时信息就是MSIL中反映出来的信息
      

  10.   

    显而易见,要想使用这个方法,必须得到类型的编译时信息(这里是SportsCar类)。由于无法对自定义的程序进行编译,类似ildasm.exe的工具并没有通过直接调用System.Object.GetType()来得到每个类型的类型信息 意为:不用System.Object.GetType()方法时必须得到类型编译时信息!为了以更灵活的方式得到类型信息,我们可以调用System.Type类的静态成员GetType(),然后指定类型的完全限定名称,采用这个方法,我们不需要得到正从中提到元数据的类型编译时信息. 意为:使用System.Object.GetType()方法时不需要得到类型编译时信息!整个意思就是使用System.Object.GetType()得到类型信息!
      

  11.   

    反射. 用object的getTyp方法 取他的类型.
    然后确认他的类型之后, 在调用他的方法..
      明白么. 这中是最简单的解释了..