如何在 Java 中使用反射实例化静态内部类?
不必创建外部类实例就可以实例化静态内部类。一般而言,内部类是嵌套类的一部分,在 Java 中称为非静态嵌套类。内部类的类型包括成员内部类、匿名内部类以及局部内部类。
我们可以使用 InnerClass.class.newInstance() 通过反射实例化静态内部类。如果我们需要外部类的实例来实例化非静态内部类,我们可以在 new 运算符之前指定它。
示例
import java.lang.reflect.*;
public class InnerclassWithReflectionTest {
public static void main(String args[]) {
try {
InnerClass inner = (InnerClass) InnerClass.class.newInstance();
inner.test();
} catch(Exception e) {
e.printStackTrace();
}
}
// inner class
static class InnerClass {
public void test() {
System.out.println("Welcome to TutorialsPoint !!!");
}
}
}
输出
Welcome to TutorialsPoint !!!
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP