java运行时动态调用其他class文件中的方法 我要做个程序,运行时能动态运行其他class文件中的方法(class文件路径及其中的方法都已知)。而class文件是可以改变的,所以要是动态的。本人对java没什么了解。现在没头绪,请各位达人指教。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个。看看classLoader吧URLClassLoader Class类里面有:getConstructor(Class<?>... parameterTypes) 得到构造函数getDeclaredField(String name) 得到字段getDeclaredMethod(String name, Class<?>... parameterTypes) 得到方法等等Method类:Object invoke(Object obj, Object... args)就可以调用方法差不多了吧.... 我是要在程序里动态调用,比如说输入一个链接c:/test.class,程序就调用里面的test()方法。二楼的方法我在看 可以,但是前提是你这些class都已经在classpath中了。如果不在classpath中,要自己写个classloader,具体怎么写,楼主可以google下。 仅仅是使用 classload 装载只能动态装载 jvm刚开始没有装载的 Class,但不能解决Class clazz1被装载,但我人为修改clazz1,同时需要在jvm中重新装载clazz1,也就是reload.这个需求已经涉及字节码变动,需要使用jvm的tool.jar包,调用jvm类进行reload操作。tool.jar包含了很多字节码操作函数,一般jdk启动是不会将tool.jar包含在classpath中的。推荐LZ看下javassist的 动态装载示例,里面有你的需求的解决办法。可以适当的看下javassist里面的源码。 jpcap 错误 问题 Unable to open a device: 10 devices are already opened. 今天外包的 sql 面试题 求JBuilder9软件,可以注册的,英文中文都行.. 请教大家一个JS 正则问题!帮帮忙! 请问应如何结帖? 水平滚动条如何在上方显示 问一个有关static的问题 急!!!跪求高手,大家帮我看看程序,后面的我编不出来了,编出来的我结贴加分!!! 一个十六进制的数字如果转换成String型? 控件大小不能控制的问题(100) 关于容器addElement方法的疑问。 发了聊天记录,引出大家对java中优化现象的了解。
URLClassLoader
getConstructor(Class<?>... parameterTypes) 得到构造函数
getDeclaredField(String name) 得到字段
getDeclaredMethod(String name, Class<?>... parameterTypes) 得到方法
等等
Method类:
Object invoke(Object obj, Object... args)就可以调用方法差不多了吧....