在Java中使用反射,我已经编写了一些代码来遍历我希望启用的类名称的数组列表,并将它们实例化并依次调用每个中包含通用名称'parse(String)'的方法。Java - 如何检查运行时是否调用动态实例化方法?
for (String parser : enabledParses)
{
Class<?> parserClass = Class.forname(String.format"%s.%s", parserDirectoryPath, parser));
Method parseMethod = parserClass.getMethod("parse", String.class);
Object parserObj = null;
switch (parser)
{
case "parser1" :
parserObj = parserClass.getConstructor(ConfigWrapper.class, Alerter.class).newInstance(config, alerter);
break;
...
...
...
}
parseMethod.invoke(pluginObj, stringToParse);
测试时,如何检查每个已启用分析程序的parse()方法是否已被调用?
谢谢!
的唯一方式,如果他们被称为是如果你添加代码到这些方法来记录他们被称为,或你检查通话结果。 –
若要添加侮辱伤害,parse()是一个无效的方法。谢谢你的帮助。 – notfreshprince