Javaでのリフレクションを使用して、私は有効にしたいクラス名のarraylistを繰り返し、それらをインスタンス化し、それぞれの中で共通名 '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()はvoidメソッドです。ご協力いただきありがとうございます。 – notfreshprince