Discuss / 编程 / java运行时创建的类无法找到

java运行时创建的类无法找到

Topic source

费伟伟

#1 Created at ... [Delete] [Delete and Lock User]

按照例子自己改了下, 先运行时生成一个类UserProxy,compile、loadClass后,接着在运行时再创建一个类UserProxy2,但是这个类中有个变量是类型为UserProxy,再编译UserProxy2的时候就会报找不到上一步创建的UserProxy这要怎么解决呢?

廖雪峰

#2 Created at ... [Delete] [Delete and Lock User]

父类必须是已存在的,子类才能动态编译

费伟伟

#3 Created at ... [Delete] [Delete and Lock User]

是的,我先运行时动态编译生成了UserProxy,并且可以获取到UserProxy的实例,但是在同一个进程中再接着编译UserProxy2,在UserProxy2这个类里使用UserProxy还是找不到。看了下代码编译好UserProxy后也重新loadclass了。

我动态生成了一个java文件 并编译成了class  加载时新的class继承了父类 但报错找不到父类


  • 1

Reply