Java反射API详解与应用场景

时间:2025-02-17 17:26:51

一、加载类:

 

在Java中,加载类最常见的方法就是使用 Class 类的 forName() 方法。这个方法接受一个字符串参数,这个字符串参数的值是某个类的全路径名。

 

例如,以下代码加载类,然后返回表示该类的Class对象:

Class dateClass = Class.forName("");
 

二、创建实例:

 

有了类的Class对象后,我们就可以使用这个Class对象创建该类的实例。最常见的做法是调用Class对象的newInstance()方法:

Object dateObject = ();
 

这行代码会调用类的无参数构造方法来创建一个新的Date对象。

 

注意:newInstance()方法只能调用无参数的构造方法。如果类没有无参数的构造方法,或者无参数构造方法不可访问,你就不能用这种方式创建类的对象。

 

三、获取类信息:

 

下面是一些获取类信息的方法:

 
  • 获取类名: getName()方法可以返回类的全路径名,getSimpleName()方法返回类的简单名字。
  1. String name = ();
  2. String simpleName = ();
 
  • 获取包名: getPackage()方法返回包对象,再调用getName()方法可以获取包名。
String packageName = ().getName();
 
  • 获取父类: getSuperClass()方法可以返回表示父类的Class对象。
Class superclass = ();
 
  • 获取接口: getInterfaces()方法返回一个包含表示所有已实现接口的Class对象的数组。
  1. Class[] interfaces = ();
  2. for (Class i : interfaces) {
  3. (());
  4. }

相关文章