docs: public static List<Method> getPublicMethods(Class<?> clazz, Filter<Method> filter) {
  		if (null == clazz) {
  			return null;
  		}
  
  		final Method[] methods = getPublicMethods(clazz);
  		List<Method> methodList;
  		if (null != filter) {
  			methodList = new ArrayList<>();
  			for (Method method : methods) {
  				if (filter.accept(method)) {
  					methodList.add(method);
  				}
  			}
  		} else {
  			methodList = CollectionUtil.newArrayList(methods);
  		}
  		return methodList;
  	}