我目前正在研究一个程序,我将在运行时动态加载类,并且正在构建一个支持它的函数库。其中一个函数是一种方法,可以轻松地搜索给定的jar文件中的给定类名称,并根据给定的初始化参数集创建新的实例。构造函数:从参数列表中获取类型列表
问题是参数。我知道如何为一组类类型找到类的构造函数,但是,试图找到一个接受参数列表的构造函数更加困难。我的第一个想法是遍历各个参数,并在每个参数上调用getClass()
,但是对于一些构造函数来说,这可能是有效的空参数呢?
是否有任何明智的方法来找到给定的一组参数的正确构造函数?
注意:仅标准Java,这是一个联合项目,因此Java派生语言和第三方库不可用。
此外,您可以添加有关ClassLoader –
的注意事项我可以处理类加载,并在过去使用过。实际上,我打算使用动态加载的大多数功能只是使用空的构造函数,然后使用初始化函数(这是更具体的应用程序),但因为它是我正在编写的库,灵活的 –