反射案例当中pro.load()报错问题的解决

package anli;

import java.io.IOException;
import java.io.InputStream;
import java.lang.reflect.Method;
import java.util.Properties;

//框架类
public class ReflectTest {
    public static void main(String[] args) throws Exception {
        //1.创建集合
        Properties pro=new Properties();
        //2.加载类
        ClassLoader cl=ReflectTest.class.getClassLoader();
        //3.流引入
        InputStream is=cl.getResourceAsStream("pro.properties");
        //4引入配置文件
        pro.load(is);

        String className=pro.getProperty("className");
        String methodName=pro.getProperty("methodName");

        Class cls=Class.forName(className);
        //6.获取对象
        Object o=cls.newInstance();
        Method m=cls.getMethod(methodName);//7.获取方法
        m.invoke(o);





    }


}

pro.load(is)出现空指针异常的原因是配置文件必须放在src目录之下,不能放在下属的包中。

原文地址:https://www.cnblogs.com/resort-033/p/13172314.html