T是一个java类型,如果有:Class c=T.class,请问,c是一个引用,那么T.class是什么东西?
例如 Class c = Manager.class;//(Manager是一个类)

解决方案 »

  1.   

    是Manager这个类的Class对象,保存了这个类相关的一些信息,比如你可以通过它得到这个类的方法,field等。
      

  2.   

    每个定义的类都有一个class属性, 这个属性是Class的实例,可以这么通俗的讲:
    类的class代表了当前类的类空间, 它存储了这个类的一些信息, 比如这个类定义了那些字段(通过getDeclaredFields得到), 那些方法(通过getDeclaredMethods得到)等等.
    类的定义,比如你上面提到的T, Manager, 代表了对象空间, 这怎么理解呢? 也就是说Manager的任何实例都长得和Manager的定义文件描述的一样. 就是说Manager的所有实例对象都有一个公共的对象空间.
      

  3.   

    T是一个类,Class c=T.class就是把T的class对象赋给c,以后你就可以使用c来调用Class对象中的方法,如c.getMethods(),就返回T这个类中的包含某些 Method 对象的数组,这些对象反映此 Class 对象所表示的类或接口(包括那些由该类或接口声明的以及从超类和超接口继承的那些的类或接口)的公共 member 方法。