用反射通过配置文件调用方法
配置文件是个txt文档 内容如下
className=reflect_study_06.Teacher
methodName=love
需要调用什么方法在reflect_study_06.后面改类即可
package reflect_study_06;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.lang.reflect.Constructor;
import java.lang.reflect.Method;
import java.util.Properties;
public class ProjectDemo {
public static void main(String[] args) throws Exception {
Properties pro =new Properties();
FileReader fr=new FileReader("配置文件.txt");
pro.load(fr);
fr.close();
String className =pro.getProperty("className");
String methodName=pro.getProperty("methodName");
//这里用反射
Class p =Class.forName(className);
Constructor con =p.getConstructor();
Object obj =con.newInstance();
Method m1 =p.getMethod(methodName);
m1.invoke(obj);
}
}
package reflect_study_06;
public class Student {
public void love(){
System.out.println("爱生活爱女朋友");
}
}
package reflect_study_06;
public class Teacher {
public void love(){
System.out.println("爱生活爱java");
}
}