Мне нужно получить все методы в классе, которые могут возвращать List, а затем проверить все эти методы, какой это тип List.Когда я получаю этот тип, мне нужно проверить, является ли это реализацией определенного интерфейса.
Я делаю:
Person person = new Person();
Class c = person.class;
for (Method m: c.getDeclaredMethods()) {
// this gets me all the getters
if (m.getParameterTypes().size() == 0) {
Class<?> returnType = m.getReturnType()
if (returnType.equals(java.util.List.class)) {
// Can get here
// But how to get the class that is used to parameterise the
// list.
}
}
}
Как получить класс, который используется для параметризации списка?