码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2019-08-09 01:11:11      阅读:104      评论:0      收藏:0      [点我收藏+]

标签:throws   property   win   method   NPU   classname   weight   stat   一个   

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);

}
}

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

标签:throws   property   win   method   NPU   classname   weight   stat   一个   

原文地址:https://www.cnblogs.com/newcityboy/p/11324632.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!