private static boolean hasStaticMembers(@NotNull JavaClass javaClass) {
    for (JavaMethod method : javaClass.getMethods()) {
      if (method.isStatic() && !shouldBeInEnumClassObject(method)) {
        return true;
      }
    }

    for (JavaField field : javaClass.getFields()) {
      if (field.isStatic() && !field.isEnumEntry()) {
        return true;
      }
    }

    for (JavaClass nestedClass : javaClass.getInnerClasses()) {
      if (SingleAbstractMethodUtils.isSamInterface(nestedClass)) {
        return true;
      }
      if (nestedClass.isStatic() && hasStaticMembers(nestedClass)) {
        return true;
      }
    }

    return false;
  }