### Question:
ReflectUtils { public static Method getMethod (final Class clazz, final String methodName) throws NoSuchMethodException { final List<Method> methods = Arrays.stream(clazz.getDeclaredMethods()) .filter(method -> methodName.equals(method.getName())) .collect(Collectors.toList()); return methods.get(0); } private  ReflectUtils(); static Field getField(final Class clazz, final String fieldName); static Method getMethod(final Class clazz, final String methodName); static T map2Object(final Map<String, Object> map, final Class<T> valueType);  }### Answer:
@Test public void testGetMethod () throws NoSuchMethodException, InvocationTargetException, IllegalAccessException { final Method method = ReflectUtils.getMethod(ReflectUtilsTest.class, "hello"); final ReflectUtilsTest test = new ReflectUtilsTest(); method.invoke(test); final Method setName = ReflectUtils.getMethod(Person.class, "setName"); final Person person = new Person(); setName.invoke(person, "bascker"); LOG.info(person.toString()); }