反射获取类的三种方式

Java里提供有三种类型:

  1. 利用Object类之中的getClass()方法 方法:public final Class<?> getClass(),表示所有类的实例化对象都可以调用此方法。

Date date = new Date(); Class<?> cls = date.getClass(); System.out.println(cls);

在任何的开发中,这种调用getClass()的方法很少会出现在直接的编写形式上。

  1. 使用“类.class”的形式取得反射的实例化对象

Class<?> cls = java.util.Date.class; System.out.println(cls);

这样的操作形式只有在框架技术上才会使用到。 以上的两种操作都有一个本质的共同点:类必须首先存在,而后才可以进行反射的操作。

  1. 利用Class类提供的方法实例化对象

public static Class<?> forName(String className) throws ClassNotFoundException Class<?> cls = Class.forName(“java.util.Date”); System.out.println(cls);

经验分享 程序员 微信小程序 职场和发展