实例化Class类的5种方法

  • 实例说明

  java的数据类型分为两类:基础数据类型和引用数据类型。对于每种类型的对象,java虚拟机会实例化不可变的java.lang.Class对象。它提供了在运行时检查对象属性的方法,这些属性包括它的成员和类型信息。更重要的是Class对象是所有反射API的入口。

  • 关键技术

  通常有5种方式获得Class对象,详细说明如下:

  1. Object.getClass
  2. .class语法
  3. Class.forName()
  4. 包装类的TYPE域:每个原始类型和void都有包装类。
  5. 以Class为返回值的方法
/**
 * 演示各种获取Class对象的方法
 */
public class ClassTest {
    @SuppressWarnings("unchecked")
    public static void main(String[] args) throws ClassNotFoundException {
        System.out.println("第一种方式:Object.getClass");
        Class c1 = new Date().getClass();
        System.out.println(c1);
        System.out.println("第二种方式:.class");
        System.out.println(Boolean.class);
        System.out.println("第三种方式:Class.forName('class.getName()')");
        Class c2 = Class.forName("java.lang.String");
        System.out.println(c2.getName());
        System.out.println("第四种方式:包装类的TYPE域");
        Class c3 = Double.TYPE;
        System.out.println(c3.getName());
        //获取void包装类
        Class c4 = void.class;
        System.out.println(c4.getName());
    }
}

 

posted @ 2019-09-12 14:37  Joy丨windy  阅读(2000)  评论(0编辑  收藏  举报