话不多说,上代码
try { URL[]urls = new URL[]{new URL("file:/"+"c:/user/")}; URLClassLoader loader = new URLClassLoader(urls); Class c = loader.loadClass("HelloWorld");// 动态读取这个类 //调用加载类的main 方法 Method m = c.getMethod("main", String[].class); m.invoke(null, (Object)new String[]{"aa","bb"}); //由于可变参数是jdk5.0之后才有的 上面代码会编译成:m.invoke(null,"aa","bb"),就发生了参数个数不匹配的问题。 //因为,必须要加上(Object)转型。避免这个问题 //public static void mmm(String[] a,String[]b); //public static void main(String[] args); } catch (Exception e) { e.printStackTrace(); }
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/13137.html