在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