У меня есть следующий код -
MyInterface.java
-
default int getNumber() {
System.out.print("Number: ");
return in.nextInt();
}
default void displayNumber(int num) {
System.out.println("Number: " + num);
}
Main.java
-
int num;
MyInterface obj = new MyInterface() {
};
num = (int) obj.getClass().getMethod("getNumber").invoke(obj);
obj.getClass().getMethod("displayNumber", parameterType).invoke(obj);
Я пропустил exceptions
для цель ясности
Здесь я создал interface
- MyInterface
с двумя methods
-
Один method
читает число и возвращает его.
other method
принимает число как parameter
и печатает его.
In Main
method
Я создал inner class
для реализации interface
Теперь с использованием reflection
и getMethod()
Я могу успешно позвонить первому method
, чтобы прочитать число.
Но я не знаю правильный формат для передачи argument
, используя getMethod()
, и, следовательно, я я не могу успешно вызвать второй method
.
Здесь, что должно быть вместо parameterType
?