RFR 8009736: Comparator API cleanup
tom.hawtin at oracle.com
Thu Jun 13 10:28:51 PDT 2013
On 12/06/2013 17:36, Paul Sandoz wrote:
> "The returned comparator is serializable and does not permit null arguments when comparing objects".
Being Serializable at all is odd. It brings the previously
implementation-dependent name and fields into the API spec.
Serialisability also allows curious behaviour. Whilst not, say, a
vulnerability itself, oddities aren't generally a good idea. For an
example of strangeness, NullComparator can have a sign of
-Integer.MIN_VALUE. It can also have a `real` field of null which is
otherwise checked for during construction, although strangely the
compare method also checks whether real is null or not.
More information about the lambda-dev