博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
反射配置文件
阅读量:5876 次
发布时间:2019-06-19

本文共 1177 字,大约阅读时间需要 3 分钟。

1、 通过反射配置文件,运行配置文件中指定类的对应方法

读取config.properties文件中的数据,通过反射技术,来完成Person对象的创建

config.properties文件内容如下

 

#className=cn.itcast.demo3.Student#methodName=studyclassName=cn.itcast.demo3.PersonmethodName=eat#className=cn.itcast.demo3.Worker#methodName=job

 

 

 

下面通过测试类反射配置文件:

/* *  调用Person方法,调用Student方法,调用Worker方法 *  类不清楚,方法也不清楚 *  通过配置文件实现此功能 *    运行的类名和方法名字,以键值对的形式,写在文本中 *    运行哪个类,读取配置文件即可 *  实现步骤: *    1. 准备配置文件,键值对 *    2. IO流读取配置文件  Reader *    3. 文件中的键值对存储到集合中 Properties *        集合保存的键值对,就是类名和方法名 *    4. 反射获取指定类的class文件对象 *    5. class文件对象,获取指定的方法 *    6. 运行方法 */public class Test {    public static void main(String[] args) throws Exception{        //IO流读取配置文件        FileReader r = new FileReader("config.properties");        //创建集合对象        Properties pro = new Properties();        //调用集合方法load,传递流对象        pro.load(r);        r.close();        //通过键获取值        String className = pro.getProperty("className");        String methodName = pro.getProperty("methodName");        //反射获取指定类的class文件对象        Class c = Class.forName(className);        Object obj = c.newInstance();        //获取指定的方法名        Method method = c.getMethod(methodName);        method.invoke(obj);    }}

 

转载地址:http://gwkix.baihongyu.com/

你可能感兴趣的文章
[Android] [Java] 分享 Process 执行命令行封装类
查看>>
iOS使用自签名证书实现HTTPS请求
查看>>
mysql 常见问题
查看>>
PHP 简单方法
查看>>
深入理解Android(一):Gradle详解
查看>>
Excel批量导出
查看>>
visio 2010
查看>>
CENTOS流水账0002.1[MySQL安装]
查看>>
为什么Eclipse中 按 F3 无效
查看>>
Nginx+tomcat(window)配置
查看>>
spring mybatis 框架集成之applicationContext.xml配置方法
查看>>
rhel 6.0 yum 安装装7zip压缩解压缩软件
查看>>
LNMP——php-fpm
查看>>
sth about initial project with heroku(simple)
查看>>
添加第三方的APK的俩种方法
查看>>
DataTable.Select方法(String,String)
查看>>
C++代码问题(segment fault)
查看>>
TCP的连接和释放
查看>>
垃圾收集算法(jvm之三)
查看>>
读、写其他应用的SharedPreferences
查看>>