📅  最后修改于: 2023-12-03 15:02:03.079000             🧑  作者: Mango
在Java中,每当我们定义一个类时,Java都会自动为其创建一个Class对象。这个Class对象提供了很多方法,getDeclaredClasses()就是其中一个。本文将为程序员介绍Java中的类getDeclaredClasses()方法及其示例。
getDeclaredClasses() 方法是Class类的一种方法,返回一个Class数组,其中包含由这个类声明的内部类和接口。即:该方法可以获取一个类中声明的所有内部类和接口的Class对象。
有时,一个类的定义中可能包含内部类。在某些情况下,我们需要使用这些内部类,而这时getDeclaredClasses()方法就非常有用了。通过该方法获取到内部类的Class对象,就可以使用这些内部类。
getDeclaredClasses() 方法的签名如下:
public Class<?>[] getDeclaredClasses() throws SecurityException
返回值是一个Class<?>类型的一维数组,该数组包含了一个类声明的所有内部类和接口。
以一个简单的例子来演示getDeclaredClasses()方法的用法,假设有如下Java类:
public class Example {
private class InnerClass {
public void sayHello() {
System.out.println("Hello, I'm inner class.");
}
}
public void sayHello() {
System.out.println("Hello, I'm Example class.");
}
}
在上述代码中,类Example包含一个私有内部类InnerClass。现在,我们通过getDeclaredClasses()方法来获取该类的内部类。
public class Main {
public static void main(String[] args) {
Class<?>[] innerClasses = Example.class.getDeclaredClasses();
for (Class<?> cls : innerClasses) {
System.out.println(cls.getName());
}
}
}
运行输出结果如下:
com.example.Example$InnerClass
说明我们成功获取了Example类中的InnerClass类的Class对象。
getDeclaredClasses()方法可以获取一个类中声明的所有内部类和接口的Class对象。通过该方法可以方便地获取到内部类的Class对象。