本帖最后由 Mrng8888 于 2012-7-24 20:10 编辑
我估计很有可能是你的properties文件里面的prop的value写错了,一定要写完整类名- package test1;
- import java.io.InputStream;
- import java.lang.reflect.Method;
- import java.util.Properties;
- public class PropertiesDemo {
- //如果是独立的一个类就是 包名.类名
- //如果是静态内部类,就是 包名.外层类名$类名,比如下面这个Test类
- //如果是一个普通的内部类,不好意思,不能直接对他实例化,内部类实例要依赖外部类实例
- public static class Test {
- public void run() {
- System.out.println("welcome to heima!");
- }
- }
- public static void main(String[] args) throws Exception {
- InputStream in = PropertiesDemo.class.getClassLoader()
- .getResourceAsStream("prop.properties");
- Properties pro = new Properties();
- pro.load(in);
- in.close();
- String className = pro.getProperty("prop");
- Class c = Class.forName(className);
- Object ob = c.newInstance();
- Method m = c.getMethod("run");
- m.invoke(ob);
- }
- }
- properties文件
- prop=test1.PropertiesDemo$Test
复制代码 |