Идея состоит в том, чтобы определить базовый класс, который может вызывать методы, определенные в наследуемых классах, но во время создания я хочу убедиться, что такие методы определены точно в соответствии с требованиями, а именно то, что методы принимают только один аргумент, HashMap <String String
>.
До сих пор я смог с помощью следующего кода проверить, что метод содержит только один параметр и что он принадлежит к классу HashMap, но как я могу проверить, что общее определение равно <String, String
>?
public boolean isMethodParameterValid(final Method method) {
final Class<?>[] parameters = method.getParameterTypes();
return ((parameters.length == 1) && parameters[0].isAssignableFrom(HashMap.class));
}