@Override
    public boolean equals(Object o) {
      if (!(o instanceof SerializableImpl)) {
        return false;
      }

      SerializableImpl other = (SerializableImpl) o;
      return byteField == other.byteField && shortField == other.shortField
          && intField == other.intField && longField == other.longField
          && floatField == other.floatField && doubleField == other.doubleField
          && charField == other.charField && booleanField == other.booleanField
          && byteFieldPrim == other.byteFieldPrim
          && shortFieldPrim == other.shortFieldPrim && intFieldPrim == other.intFieldPrim
          && longFieldPrim == other.longFieldPrim
          && floatFieldPrim == other.floatFieldPrim
          && doubleFieldPrim == other.doubleFieldPrim
          && charFieldPrim == other.charFieldPrim
          && booleanFieldPrim == other.booleanFieldPrim
          && unsignedByteField == other.unsignedByteField
          && unsignedShortField == other.unsignedShortField
          && (stringField == null || stringField.equals(other.stringField))
          && (objectField == null || objectField.equals(other.objectField));
    }
Two <code>SerializableImpl</code>s are equal if their contents are equal.
geode-core/src/test/java/org/apache/geode/internal/DataSerializableJUnitTest.java