[OpenJDK 2D-Dev] Review Request for JDK-7107905: ColorModel subclasses are missing hashCode() or equals() or both methods
Phil Race
philip.race at oracle.com
Tue May 31 22:31:12 UTC 2016
I don't know of any design intent, so yes, I meant more as a practical
matter.
Unless they subclass then using equals() which I thought unlikely it
makes no difference here.
But it would be proof against that to use equals, unlikely to matter as
it might be ..
-phil.
On 05/31/2016 03:19 PM, Jim Graham wrote:
>
>
> On 05/31/2016 02:50 PM, Phil Race wrote:
>> On 05/31/2016 12:20 PM, Jim Graham wrote:
>>> Hi Jay,
>>>
>>> You were going to remove hashCode/equals from CCM, but instead you
>>> simply removed it from the patch. You still need to edit it to remove
>>> the existing methods.
>>
>> Oh yeah ! CCM is gone from the latest webrev. I expect that was not
>> intentional.
>>
>>>
>>> Also, I'm not sure == is a good way to compare ColorSpace instances -
>>> Phil?
>>
>> Neither ColorSpace nor ICC_ColorSpace over-ride equals or hashCode and
>> all the predefined ones are constructed as singletons so it seems
>> unlikely
>> to cause problems
>
> Should it use .equals() on principle, though? Otherwise we are baking
> in the assumption that it doesn't implement equals() into our
> implementation of the CM.equals() method. Might it some day implement
> equals (perhaps it isn't a practical issue today, but it might be in
> the future when we forget that it was omitted in this usage we create
> today).
>
> I guess what I'm asking is if it is a design feature that different
> objects are considered non-equal (such as an object that, for
> instance, has only predetermined instances that are shared by
> reference and reused). I think color spaces are sort of in-between in
> that we define a few constants that simply get used by reference in
> 99% of cases, but that isn't a design feature, more like a practical
> issue...
>
> ...jim
More information about the 2d-dev
mailing list