动态执行java代码块 java动态执行代码片段( 五 )


new File(file.getParent(), classname + “.class”).deleteOnExit();
try {
// 访问这个类
Class cls = Class.forName(classname);
//映射main方法
Method main = cls.getMethod(“main”,new Class[] { String[].class });
//执行main方法
main.invoke(null, new Object[] { new String[0] });
}catch (SecurityException se) {

}
}
/**打印调试信息*/
private static void debug(String msg) {
System.err.println(msg);
}
/**根据一个java源文件名获得类名*/
private static String getClassName(String filename){
return filename.substring(0,filename.length()-5);
}
/**从控制台获得用户输入的Java代码段*/

}
编译运行上述代码 , 在please input java code提示下输入以下代码:
for(int i=0;i10;i++){System.out.println(“this is:”+i);}
运行结果如下所示:
Please input java code:
for(int i=0;i10;i++){System.out.println(“this is:”+i);}
wait....
--------------------
this is:0
this is:1
this is:2
this is:3
this is:4
this is:5
this is:6
this is:7
this is:8
this is:9
总结
在大中型企业应用系统平台中 , 使用代码动态编译技术结合OO编程模型,可在系统不菪机条件下保证系统的可扩展性和伸缩性 。如果你是一个Java程序员,稍加调整以上代码 , 还可以帮助调试小段的Java代码.
【动态执行java代码块 java动态执行代码片段】关于动态执行java代码块和java动态执行代码片段的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

推荐阅读