在java中在运行时提供方法实现

时间:2014-01-21 17:03:17

标签: java

我有swing class JTextArea,用于编写一些java代码。从swing class我调用其他class(say X)中的方法,该方法返回一些值。说,

X x = new X();
int result[] = x.getResult(int p[]);

X class需要存在于同一目录中,否则我的代码无法编译。所以我创建一个X class并创建一个返回空数组的函数getResult。该方法在运行时由用户(在TextArea中)实现。

在将ProcessBuilder的内容写入该文件后,我可以使用TextArea在运行时编译该类。问题是这样的 - 当我在我的IDE(IntelliJ Idea)中运行代码时,该函数返回应该返回的正确值,因为文件被覆盖时因为用户代码。但是当我将项目打包在jar中时,它只返回空数组。新代码写入同一目录中的文件,但它采用初始函数给出的值(可能包含在jar文件中)。

我如何获得正确的返回值?

0 个答案:

没有答案