code: private ObjectStreamClass readEnumDesc() throws IOException,
              ClassNotFoundException {
          byte tc = nextTC();
          switch (tc) {
              case TC_CLASSDESC:
                  return readEnumDescInternal();
              case TC_REFERENCE:
                  return (ObjectStreamClass) readCyclicReference();
              case TC_NULL:
                  return null;
              default:
                  throw corruptStream(tc);
          }
      }
docs: /*
  read class type for Enum, note there's difference between enum and normal
  classes