С учетом следующего интерфейса:
interface Random extends java.util.function.Supplier<Integer> { }
с java.util.function.Supplier
выглядит следующим образом (сокращенно):
public interface Supplier<T> { T get(); }
Теперь рассмотрим следующее:
java.lang.reflect.Method get = Random.class.getMethod("get");
System.out.println(get.getReturnType()); // prints `class java.lang.Object`
System.out.println(get.getGenericReturnType()); // prints `T`
Как я могу сделать вывод, что тип возвращаемого значения должен быть java.lang.Integer
?