Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.java.programmer > #9843
| From | markspace <-@.> |
|---|---|
| Newsgroups | comp.lang.java.programmer |
| Subject | Re: equals(), Sets, Maps, and degrees of equality |
| Date | 2011-11-10 20:55 -0800 |
| Organization | A noiseless patient Spider |
| Message-ID | <j9i9t1$d5u$1@dont-email.me> (permalink) |
| References | (4 earlier) <j9gq5d$ue6$1@dont-email.me> <5a705514-4b5e-48c2-8984-83e3b62b23b9@y7g2000vbe.googlegroups.com> <j9hvhf$r4p$1@dont-email.me> <j9i3he$ej9$1@dont-email.me> <j9i856$5a4$1@dont-email.me> |
On 11/10/2011 8:24 PM, Eric Sosman wrote:
> On 11/10/2011 10:07 PM, markspace wrote:
>> Right. It's really not that different than making subclasses to handle
>> different schemes.
>
> It seems strikingly different to me. Your suggestion is that
> a Dog could dictate which of several hashCode/equals pairs to use,
> but any particular Dog instance could select only one pair at a time.
> With inner classes or wrappers, a single Dog instance could present
> multiple aspects simultaneously and could participate simultaneously
> in multiple collections based on those different key-nesses.
Oh I see. The wrapper being a subclass of Dog. I was thinking of
comparing my Strategy pattern with subclasses which implemented specific
behavior.
class Dog { .. some fields .. }
class DogSortedByName extends Dog {...}
class DogSortedByBreed extends Dog {...}
The strategy pattern is similar, because we really can't change a class
of Dog once its used. In extraordinary cases we could, if the object
could be removed from a given collection completely, then we could
change the its strategy and add it to another collection, but this may
not be useful or practical.
The wrapper pattern is definitely more flexible, at the cost of needing
one wrapper object for each Dog object. The Strategy pattern is less
flexible, but only needs one Strategy object per strategy (in this case
anyway), and doesn't seem to buy us much over concrete subclasses.
Given that we actually don't know that much about the OP's problem, I
thought it would be interesting to speculate on some different solutions.
Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
equals(), Sets, Maps, and degrees of equality Sean Mitchell <sean@mitchwood.com> - 2011-11-09 18:33 -0800
Re: equals(), Sets, Maps, and degrees of equality Owen Jacobson <angrybaldguy@gmail.com> - 2011-11-09 22:10 -0500
Re: equals(), Sets, Maps, and degrees of equality v_borchert@despammed.com (Volker Borchert) - 2011-11-10 04:42 +0000
Re: equals(), Sets, Maps, and degrees of equality Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-11-09 22:11 -0500
Re: equals(), Sets, Maps, and degrees of equality markspace <-@.> - 2011-11-09 22:43 -0800
Re: equals(), Sets, Maps, and degrees of equality Sean Mitchell <sean@mitchwood.com> - 2011-11-10 06:33 -0800
Re: equals(), Sets, Maps, and degrees of equality markspace <-@.> - 2011-11-10 07:21 -0800
Re: equals(), Sets, Maps, and degrees of equality Sean Mitchell <sean@mitchwood.com> - 2011-11-10 07:29 -0800
Re: equals(), Sets, Maps, and degrees of equality markspace <-@.> - 2011-11-10 10:27 -0800
Re: equals(), Sets, Maps, and degrees of equality Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-11-10 20:58 -0500
Re: equals(), Sets, Maps, and degrees of equality markspace <-@.> - 2011-11-10 19:07 -0800
Re: equals(), Sets, Maps, and degrees of equality Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-11-10 23:24 -0500
Re: equals(), Sets, Maps, and degrees of equality markspace <-@.> - 2011-11-10 20:55 -0800
Re: equals(), Sets, Maps, and degrees of equality Sean Mitchell <sean@mitchwood.com> - 2011-11-11 10:27 -0800
Re: equals(), Sets, Maps, and degrees of equality Lew <lewbloch@gmail.com> - 2011-11-11 14:21 -0800
Re: equals(), Sets, Maps, and degrees of equality Sean Mitchell <sean@mitchwood.com> - 2011-11-10 06:31 -0800
Re: equals(), Sets, Maps, and degrees of equality Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2011-11-10 11:27 -0800
Re: equals(), Sets, Maps, and degrees of equality Roedy Green <see_website@mindprod.com.invalid> - 2011-11-10 16:01 -0800
Re: equals(), Sets, Maps, and degrees of equality Andreas Leitgeb <avl@gamma.logic.tuwien.ac.at> - 2011-11-11 09:08 +0000
Re: equals(), Sets, Maps, and degrees of equality Lew <lewbloch@gmail.com> - 2011-11-11 07:27 -0800
Re: equals(), Sets, Maps, and degrees of equality Sean Mitchell <sean@mitchwood.com> - 2011-11-11 10:28 -0800
Re: equals(), Sets, Maps, and degrees of equality Lew <lewbloch@gmail.com> - 2011-11-11 14:22 -0800
Re: equals(), Sets, Maps, and degrees of equality markspace <-@.> - 2011-11-11 15:19 -0800
Re: equals(), Sets, Maps, and degrees of equality Lew <lewbloch@gmail.com> - 2011-11-13 21:18 -0800
Re: equals(), Sets, Maps, and degrees of equality Lew <lewbloch@gmail.com> - 2011-11-16 09:15 -0800
csiph-web