--- old/src/share/classes/java/util/Collection.java 2013-08-27 18:58:28.564967372 -0700 +++ new/src/share/classes/java/util/Collection.java 2013-08-27 18:58:28.384967363 -0700 @@ -492,6 +492,11 @@ * In particular, c1.equals(c2) implies that * c1.hashCode()==c2.hashCode(). * + * @apiNote Support for calculation of hash code by self referential + * Collections (they either directly or indirectly contain themselves) is + * optional. Few Collection implementations support calculation of hash + * code for self referential instances. + * * @return the hash code value for this collection * * @see Object#hashCode() --- old/src/share/classes/java/util/Map.java 2013-08-27 18:58:29.216967404 -0700 +++ new/src/share/classes/java/util/Map.java 2013-08-27 18:58:29.044967395 -0700 @@ -541,6 +541,11 @@ * m1 and m2, as required by the general contract of * {@link Object#hashCode}. * + * @apiNote Support for calculation of hash code by self referential + * Maps (they either directly or indirectly contain themselves as a key) is + * optional. Few Map implementations support calculation of hash code for + * self referential instances. + * * @return the hash code value for this map * @see Map.Entry#hashCode() * @see Object#equals(Object)