我可以在运行时创建Java类吗?

时间:2018-06-26 10:06:02

标签: java class dynamic

我想根据一些结果动态创建Java类。请告诉我是否可以创建它并在其中添加代码。 非常感谢您的帮助

1 个答案:

答案 0 :(得分:2)

如评论中所说:“您可以。这对您的情况无济于事。”

含义:如果您必须询问,则您可能没有足够的经验/技能来完成此类工作。含义:如果您忽略此建议,则可能会花费大量时间来尝试进行仍具有“细微”缺陷的“工作”。我想到一个例子:您可能太疏忽了,以至于忽略了JVM及其类加载器通过缓存已加载的类进行操作的事实,这可能会破坏您在循环内生成类的意图。或在Web Servlet内,为每个传入的请求生成一次类。

那是说:您可以在运行时生成的java源上调用编译器,并且如果您正确处理了编译错误(“某些输入”是否完全健全),并且可以看到生成的.class文件结束了JVM的类路径中存在的内容(在servlet容器中,这很可能会破坏轻松的可部署性),如果您考虑类加载的所有可能问题(我不知道自己是“全部”问题),那么结果可能就如您所愿

已被警告。认真对待警告。