int (ComparableObject me, int superCode) { Object[] objects = me.getEqualityObjects(); if (objects.length == 0) { return superCode; } int result = 0; for (Object object : objects) { result = 29 * result + (object != null ? object.hashCode() : 239); } return result; }