このサイトで java/reflection に関する投稿をいくつか見つけました。しかし、まだ何かが理解できません。私のコードのどこにエラーがあるか誰か教えてもらえますか? (「HELLO!」を印刷する必要があります)
出力:
java.lang.NoSuchMethodException: Caller.foo()
これが私のものMain.java
です:
import java.lang.reflect.*;
class Main {
public static void main(String[] args) {
Caller cal = new Caller();
Method met;
try {
met = cal.getClass().getMethod("foo", new Class[]{});
met.invoke(cal);
} catch (Exception e) {
System.out.println(e.toString());
}
}
}
class Caller {
void foo() {
System.out.println("HELLO!");
}
}