java反射呼叫指定jar包中的類和方法
阿新 • • 發佈:2019-02-19
需求:動態載入jar包,例項化jar包中的類,並呼叫類中的方法
已知:jar包所在路徑和jar包名稱,類名已知,類繼承的抽象類可以被引入,類中的方法已知
實現方法:
1. 手動呼叫類載入器動態載入jar包;
2. 應用java中的反射例項化類,得到類的一個例項;
3. 運用類例項呼叫類方法。
jar包所在路徑及jar包名:C:/test_reverse.jar
類名:ReverseService.java
抽象類:AbstractReverseService.java
類中方法:testJava
實現方法:
public void method() {
URL url = new URL("file:///
//使用URL類載入器動態載入jar包
URLClassLoader myClassLoader = new URLClassLoader(new URL[] {url});
Class<?> clazz = myClassLoader.loadClass("ReverseService.java");
AbstractReverseService instance = (AbstractReverseService) clazz.newInstance();
instance.testJava();
}