调用配置文件里制定的类的制定方法(参数没制定,所以还是不能用)
com/fanshe/reflectCall.java
//加载properties文件
Properties properties = new Properties();
ClassLoader classLoader = reflectCall.class.getClassLoader();
InputStream resource = classLoader.getResourceAsStream("./com/fanshe/reflectCall.properties");
System.out.println(resource);
properties.load(resource);
//读properties文件的属性
String className = properties.getProperty("className");
String method = properties.getProperty("method");
//根据类名创建类
Class<?> aClass = Class.forName(className);
//获取无参构造函数并创建实例
Constructor<?> constructor = aClass.getDeclaredConstructor();
constructor.setAccessible(true);
Object instance = constructor.newInstance();
//获取方法并调用方法
Method method1 = aClass.getDeclaredMethod(method);
method1.setAccessible(true);
method1.invoke(instance);
com/fanshe/reflectCall.properties
className=myCode.arrInverse
method=run
评论区