利用反射和配置文件结合的方式,动态切换方法运行的案列

mac2022-06-30  30

package com.itcast.reflect;import java.io.InputStream;import java.lang.reflect.Method;import java.util.Properties;/** * @author newcityman * @date 2019/8/8 - 23:07 * 框架类:利用反射和properties配置文件结合的方式 * 在不改变java代码的情况下,通过修改配置文件的方法,来改变运行方法的切换 */public class RefelectTest {public static void main(String[] args) throws Exception {// 1、可以创建任意的对象,执行任意的方法// 1.1创建properties对象 Properties pro = new Properties();// 1.2加载配置文件,转换为一个集合// 1.2.1获取class目录下的配置文件 ClassLoader classLoader = RefelectTest.class.getClassLoader(); InputStream is = classLoader.getResourceAsStream("pro.properties"); pro.load(is);// 2、获取配置文件中定义的数据 String className = pro.getProperty("className"); String methodName = pro.getProperty("methodName");// 3、加载该类进内存 Class cls = Class.forName(className);// 4、创建对象 Object obj = cls.newInstance();// 5、获取对象 Method method = cls.getMethod(methodName); method.invoke(obj); }}

转载于:https://www.cnblogs.com/newcityboy/p/11324632.html

最新回复(0)