将字符串内容转换为当前类的代码?

时间:2013-02-01 04:38:08

标签: java

我知道将字符串转换为可运行的代码已经存在很多问题,但我的问题有点不同。假设您有一个类,其中包含一个名为public boolean isSame(boolean a, boolean b)的方法,以及一个包含"if(a == b) { return true; } return false"的字符串。有没有办法将字符串的内容添加到方法的代码中?所以最终结果将是:

public boolean isSame(boolean a, boolean b){
    if(a == b){
        return true;
    }
    return false;
}

非常感谢。

编辑:我完全理解这是不可能的,但值得问一下:)。

1 个答案:

答案 0 :(得分:1)

也许你可以使用BECL库 - 它是一个字节码工程库,虽然不以性能着称,但以易用性着称。

在您的案例中让它变得有趣的事情:

与在字节代码之上提供抽象的其他字节代码工程库不同,它通过反编译一个类,编织所需代码然后再次编译它来工作。 。 。这种情况发生在类加载阶段。 。 。从理论上讲,这将允许您在原始方法调用之前或之后以字符串格式插入有效代码。

基本上根据问题的评论部分中的建议使用编译器,但为您做了一些额外的工作。