code: private static boolean needsInstantiation(Class<?> clazz) {
      for (Field f : clazz.getDeclaredFields()) {
        if (f.isAnnotationPresent(Option.class) && !Modifier.isStatic(f.getModifiers())) {
          return true;
        }
      }
      return false;
    }
docs: Determine if a class needs to be instantiated in order to work properly with {@link Options}.
  
  @param clazz the class whose values will be created by command-line arguments
  @return true if the class needs to be instantiated before command-line arguments are parsed