避免反射api调用动态方法

时间:2014-01-12 17:00:00

标签: java performance reflection

请帮助我如何在不使用反射API的情况下动态调用java方法我在xls文件中编写所有java函数名称。我的xlsreader逐个读取该函数名称并调用它反射api但我想避免反射api ...请帮帮我

1 个答案:

答案 0 :(得分:0)

完全动态调用只能通过反射来完成。但是,您可以使用以下一般方法:

  1. 根据您的用例生成调用代码(即,加载xls文件并生成.java文件)。让它为所有动态生成的类实现一个定义execute()方法的接口。
  2. 使用内置编译器API(ToolSupport.getSystemJavaProvider
  3. 编译生成的文件
  4. 使用自定义ClassLoader
  5. 加载新编译的类
  6. 实例化该类并在其上调用execute()。