Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.java.programmer > #17568 > unrolled thread
| Started by | bob smith <bob@coolfone.comze.com> |
|---|---|
| First post | 2012-08-09 14:58 -0700 |
| Last post | 2012-08-10 13:43 -0400 |
| Articles | 7 — 5 participants |
Back to article view | Back to comp.lang.java.programmer
default equals function? bob smith <bob@coolfone.comze.com> - 2012-08-09 14:58 -0700
Re: default equals function? Eric Sosman <esosman@ieee-dot-org.invalid> - 2012-08-09 18:11 -0400
Re: default equals function? bob smith <bob@coolfone.comze.com> - 2012-08-10 07:12 -0700
Re: default equals function? rossum <rossum48@coldmail.com> - 2012-08-10 16:47 +0100
Re: default equals function? Eric Sosman <esosman@ieee-dot-org.invalid> - 2012-08-10 12:29 -0400
Re: default equals function? Jeff Higgins <jeff@invalid.invalid> - 2012-08-09 18:22 -0400
Re: default equals function? Arne Vajhøj <arne@vajhoej.dk> - 2012-08-10 13:43 -0400
| From | bob smith <bob@coolfone.comze.com> |
|---|---|
| Date | 2012-08-09 14:58 -0700 |
| Subject | default equals function? |
| Message-ID | <c1faab3a-8c4d-4a3b-a403-c9d0381deab5@googlegroups.com> |
Let's say I have a class like this:
public class Kern_Pair {
int letter1, letter2;
}
Can someone tell me how the default equals function will behave?
like
kernpair1.equals(kernpair2)
?
[toc] | [next] | [standalone]
| From | Eric Sosman <esosman@ieee-dot-org.invalid> |
|---|---|
| Date | 2012-08-09 18:11 -0400 |
| Message-ID | <k01chv$jh8$1@dont-email.me> |
| In reply to | #17568 |
On 8/9/2012 5:58 PM, bob smith wrote:
> Let's say I have a class like this:
>
> public class Kern_Pair {
> int letter1, letter2;
>
> }
>
> Can someone tell me how the default equals function will behave?
>
> like
>
> kernpair1.equals(kernpair2)
>
> ?
Teachable Moment.
The Kern_Pair class has no equals() method of its own, so it
inherits equals() from the nearest superclass that has one. Walk
up the class inheritance tree to find the nearest ancestor with an
equals(). The class inheritance tree for Kern_Pair is fairly short:
Its immediate superclass is Object (because you didn't say "extends
SomethingElse"), so the equals() method for Kern_Pair *is* the
equals() method of Object.
Now all you need to do is go to the Javadoc and study what
Object's equals() will do.
--
Eric Sosman
esosman@ieee-dot-org.invalid
[toc] | [prev] | [next] | [standalone]
| From | bob smith <bob@coolfone.comze.com> |
|---|---|
| Date | 2012-08-10 07:12 -0700 |
| Message-ID | <6d0a5330-56a8-4fe9-b820-c1931c54485d@googlegroups.com> |
| In reply to | #17569 |
On Thursday, August 9, 2012 5:11:07 PM UTC-5, Eric Sosman wrote:
> On 8/9/2012 5:58 PM, bob smith wrote:
>
> > Let's say I have a class like this:
>
> >
>
> > public class Kern_Pair {
>
> > int letter1, letter2;
>
> >
>
> > }
>
> >
>
> > Can someone tell me how the default equals function will behave?
>
> >
>
> > like
>
> >
>
> > kernpair1.equals(kernpair2)
>
> >
>
> > ?
>
>
>
> Teachable Moment.
>
>
>
> The Kern_Pair class has no equals() method of its own, so it
>
> inherits equals() from the nearest superclass that has one. Walk
>
> up the class inheritance tree to find the nearest ancestor with an
>
> equals(). The class inheritance tree for Kern_Pair is fairly short:
>
> Its immediate superclass is Object (because you didn't say "extends
>
> SomethingElse"), so the equals() method for Kern_Pair *is* the
>
> equals() method of Object.
>
>
>
> Now all you need to do is go to the Javadoc and study what
>
> Object's equals() will do.
>
>
>
> --
>
> Eric Sosman
>
> esosman@ieee-dot-org.invalid
The equals method for class Object implements the most discriminating possible equivalence relation on objects; that is, for any non-null reference values x and y, this method returns true if and only if x and y refer to the same object (x == y has the value true).
[toc] | [prev] | [next] | [standalone]
| From | rossum <rossum48@coldmail.com> |
|---|---|
| Date | 2012-08-10 16:47 +0100 |
| Message-ID | <a3ba28p32j9021on0sd704ptdbu87s5k40@4ax.com> |
| In reply to | #17574 |
On Fri, 10 Aug 2012 07:12:06 -0700 (PDT), bob smith <bob@coolfone.comze.com> wrote: >The equals method for class Object implements the most discriminating >possible equivalence relation on objects; that is, for any non-null >reference values x and y, this method returns true if and only if >x and y refer to the same object (x == y has the value true). Correct. What do you think that means in practice for your Kern_Pair class? As a minor point, the Java naming convention does not have underscores in class names: KernPair would be the expected name. Kern_Pair looks more like C++ than Java. rossum
[toc] | [prev] | [next] | [standalone]
| From | Eric Sosman <esosman@ieee-dot-org.invalid> |
|---|---|
| Date | 2012-08-10 12:29 -0400 |
| Message-ID | <k03ctm$vfa$1@dont-email.me> |
| In reply to | #17574 |
On 8/10/2012 10:12 AM, bob smith wrote:
> On Thursday, August 9, 2012 5:11:07 PM UTC-5, Eric Sosman wrote:
>> On 8/9/2012 5:58 PM, bob smith wrote:
>>> [...]
>>> Can someone tell me how the default equals function will behave?
>> [...]
>> Now all you need to do is go to the Javadoc and study what
>> Object's equals() will do.
>
> The equals method for class Object implements the most discriminating possible equivalence relation on objects; that is, for any non-null reference values x and y, this method returns true if and only if x and y refer to the same object (x == y has the value true).
... and there you have it. Any questions?
--
Eric Sosman
esosman@ieee-dot-org.invalid
[toc] | [prev] | [next] | [standalone]
| From | Jeff Higgins <jeff@invalid.invalid> |
|---|---|
| Date | 2012-08-09 18:22 -0400 |
| Message-ID | <k01d1c$m32$1@dont-email.me> |
| In reply to | #17568 |
On 08/09/2012 05:58 PM, bob smith wrote:
> Let's say I have a class like this:
>
> public class Kern_Pair {
> int letter1, letter2;
>
> }
>
> Can someone tell me how the default equals function will behave?
>
> like
>
> kernpair1.equals(kernpair2)
>
> ?
<http://docs.oracle.com/javase/tutorial/java/IandI/objectclass.html>
Here is a convenient dashboard to the Oracle Java documentation.
<http://docs.oracle.com/javase/7/docs/>
You may replace the 7 in the above address with a 3, 4, 5 or 6
to see older versions documentation.
[toc] | [prev] | [next] | [standalone]
| From | Arne Vajhøj <arne@vajhoej.dk> |
|---|---|
| Date | 2012-08-10 13:43 -0400 |
| Message-ID | <5025484c$0$287$14726298@news.sunsite.dk> |
| In reply to | #17570 |
On 8/9/2012 6:22 PM, Jeff Higgins wrote: > Here is a convenient dashboard to the Oracle Java documentation. > <http://docs.oracle.com/javase/7/docs/> > You may replace the 7 in the above address with a 3, 4, 5 or 6 > to see older versions documentation. And surprising that works (via redirect). Surprisingly because Java SE 3 and 4 are J2SE 1.3 and 1.4! Someone at Oracle has been smart. Arne
[toc] | [prev] | [standalone]
Back to top | Article view | comp.lang.java.programmer
csiph-web