JAVA类型信息

JAVA类型信息

1. Class对象

  类的信息存储在一个特殊对象中——Class对象。每个类都有一个Class对象。编写并编译一个新类,就会产生一个Class对象,存在同名的.class文件中。

  类加载器用Class对象用来创建一个类的实例对象。因为JAVA程序是在运行时才加载的,所以创建一个类的实例对象时,默认的类加载器首先检查这个类的Class对象是否已经加载。如果尚未加载,默认的类加载器会寻找.class文件。

  获得Class对象的引用的方法有三个:1.知道类的名称,使用Class.forName()静态方法。2.有该类的对象,调用该对象的getClass()方法。3.使用类字面常量。

1 Class c = Class.forName("com.cnblogs.Test");
2 
3 Test obj = new Test();
4 Class c = obj.getClass();
5 
6 Class c = int.class

   使用Class对象的newInstance()方法可以创建该类的实例对象,但要求该类拥有默认构造器(无参构造函数),否则运行时会报错(编译期不会)。

1 Class c = int.class;
2 Integer i = c.getInstance();

  还可以利用泛型语法,在编译期避免错误的Class应用。

1 Class<? extends Number> c = int.class;

 

 

posted @ 2012-12-02 18:51  RichardJing  阅读(270)  评论(0编辑  收藏  举报