在 Java 中,是否可以在应用程序运行时动态创建类定义,然后创建该类的对象?
例如,正在运行的应用程序会读入一个文本文件,其中包含要包含在新类中的类成员列表。然后,应用程序将根据成员列表定义一个类定义,然后实例化它。
最佳答案
是的,理论上可以这样做,您的类文件是字节码,最后是字节数组!然后,您可以使用方法 defineClass(String, byte[], int, int) 获取可用于通过反射实例化对象的 Class 实例。
在实践中你可以使用像CGLib这样的东西或 javaassist .
您还可以使用在文件中生成 java 代码、调用编译器然后加载文件的长方法。
关于java - 在 Java 应用程序运行时定义类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/781805/