Java的动态机制---动态编译

2019-07-27  本文已影响0人  吃块西瓜写代码

Java的动态机制---动态编译
1 作用

2 两种做法

3 参数
第一个为Java编译器提供参数
第二个为接受java编译器的输出信息
第三个接收编译器的错误信息
第四个参数能传入一个或多个Java源文件
返回值为0 表示成功,

public class Demo01{
      public static void main(String[] args){
      JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
       int result = compiler.run(null,null,null,"c:/Hello.java");
}


}

4 动态运行编译好的类

URLClassLoader loader = new URLClassLoader(urls);
Class c = loader.loaderClass(classFile);
c.getMethod("main",String[].class).invole(null,(Object)new Sttring[]{});
//Object由于可变参数时JDK5之后才有,因此如果不转为Object会 Sttring[]{“11”“vv”}被当作两   个参数。
上一篇下一篇

猜你喜欢

热点阅读