public boolean detailCompare(Object other) {
    if (other == this) {
      return true;
    }
    if (other == null) {
      return false;
    }
    if (!(other instanceof DistributionLocatorId)) {
      return false;
    }
    final DistributionLocatorId that = (DistributionLocatorId) other;

    if (!StringUtils.equals(hostnameForClients, that.hostnameForClients)) {
      return false;
    }
    if (!Objects.equals(host, that.host)) {
      return false;
    }
    if (port != that.port) {
      return false;
    }
    return StringUtils.equals(bindAddress, that.bindAddress);
  }
In case both objects have same member name, it will compare all other parameters

@param other the reference object with which to compare.
@return true if this object is the same as the obj argument; false otherwise.
geode-core/src/main/java/org/apache/geode/internal/admin/remote/DistributionLocatorId.java