通过反射运行配置文件内容

本文介绍了一种利用配置文件来动态执行指定类中方法的技术方案。通过读取class.txt配置文件中的类名和方法名,使用Java反射机制加载类并调用相应的方法,实现了灵活的代码执行方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

通过反射运行配置文件内容

class.txt文件中的内容:

className=day27.Worker

methodName=love

 

public classWorker {

   public void love() {

      System.out.println("爱生活,爱工作");

   }

}

 

import java.io.FileReader;

import java.lang.reflect.Constructor;

import java.lang.reflect.Method;

import java.util.Properties;

 

/*

 * 通过配置文件运行类中的方法

 *

 * 反射:

 *             需要有配置文件配合使用。

 *             用class.txt代替。

 *             并且你知道有两个键。

 *                      className

 *                      methodName

 */

public class Test {

         publicstatic void main(String[] args) throws Exception {

                   //反射前的做法

                   //Student s = new Student();

                   //s.love();

                   //Teacher t = new Teacher();

                   //t.love();

                   //Worker w = new Worker();

                   //w.love();

                   //反射后的做法

 

                   //加载键值对数据

                   Propertiesprop = new Properties();

                   FileReaderfr = new FileReader("class.txt");

                   prop.load(fr);

                   fr.close();

 

                   //获取数据

                   StringclassName = prop.getProperty("className");

                   StringmethodName = prop.getProperty("methodName");

 

                   //反射

                   Classc = Class.forName(className);

 

                   Constructorcon = c.getConstructor();

                   Objectobj = con.newInstance();

 

                   //调用方法

                   Methodm = c.getMethod(methodName);

                   m.invoke(obj);

         }

}

运行结果:

         爱生活,爱工作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值