code: private static String classToString(final Class<?> c) {
          if (c.isArray()) {
              return toString(c.getComponentType()) + "[]";
          }
  
          final StringBuilder buf = new StringBuilder();
  
          if (c.getEnclosingClass() != null) {
              buf.append(classToString(c.getEnclosingClass())).append('.').append(c.getSimpleName());
          } else {
              buf.append(c.getName());
          }
          if (c.getTypeParameters().length > 0) {
              buf.append('<');
              appendAllTo(buf, ", ", c.getTypeParameters());
              buf.append('>');
          }
          return buf.toString();
      }
docs: Format a {@link Class} as a {@link String}.
  
  @param c {@code Class} to format
  @return String
  @since 3.2