Java动态生成代码
我在程序中根据需要生成了一些代码,例如“inti=0;i++;System.out.println(i);”有办法在程序运行的时候执行它吗?分不多了,谢谢回答。...
我在程序中根据需要生成了一些代码,例如“int i=0;i++;System.out.println(i);”有办法在程序运行的时候执行它吗?分不多了,谢谢回答。
展开
2个回答
2014-01-02
展开全部
可以的,我说说大概思路,很简单,你自己具体实现吧,把代码写给你没意义的:
1.将你这段字符串输出到一个文件里,用Java类文件的方式命名。
2.调用外部javac命令将该文件编译。
3.用类加载器(ClassLoad)动态加载新的class文件并用Class.forName()注册该类,然后就可以正常使用了。
上面的每一步都能在baidu中找到实现方法,自己发挥吧。
1.将你这段字符串输出到一个文件里,用Java类文件的方式命名。
2.调用外部javac命令将该文件编译。
3.用类加载器(ClassLoad)动态加载新的class文件并用Class.forName()注册该类,然后就可以正常使用了。
上面的每一步都能在baidu中找到实现方法,自己发挥吧。
2014-01-02
展开全部
代码需要经过编译才能执行。
你的问题我不太明白,可以把要分开的代码打成不同的包,然后通过exec() 这样的调用。
如果你是想直接执行这些代码是不可能的。
为什么不用 if else
你的问题我不太明白,可以把要分开的代码打成不同的包,然后通过exec() 这样的调用。
如果你是想直接执行这些代码是不可能的。
为什么不用 if else
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询