java编写 使用反射技术结合读取Properties格式的配置文件,实现在一个程序中可以调用任何一个java类的run方

 我来答
莔囧冏冋冂
推荐于2016-10-11 · TA获得超过642个赞
知道小有建树答主
回答量:411
采纳率:100%
帮助的人:551万
展开全部
//Test.java
import java.util.*;
import java.io.*;
import java.lang.reflect.*;

public class Test {
public static void main(String[] args) throws Exception {
InputStream in = Test.class.getClassLoader().getResourceAsStream("prop.properties");
Properties pro = new Properties();
pro.load(in);
in.close();
String className = pro.getProperty("class");
Class c = Class.forName(className);
Object o = c.newInstance();
Method m = c.getMethod("run");
m.invoke(o);
}
}

//Demo.java
public class Demo {
public void run() {
System.out.println("run() method has been invoked");
}
}

//prop.properties
class=Demo
as3_0
2012-06-20 · TA获得超过241个赞
知道答主
回答量:229
采纳率:0%
帮助的人:111万
展开全部
这个程序我就不写了

//从配置文件中读取类路径
String classpath = readClassPath(key);
//找到类
Class cls = Class.forName(classpath);
//实例化类
Object obj = cls.newInstance();
//获取类的run方法
Method method = cls.getMethd("run");
//调用方法
Object result = method.invoke(obj,args);
//结束。。伪代码可参考。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式