|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Mar 2007
Messaggi: 7863
|
[java] equals
solitamnete il metodo equals è gestito cosi:
public boolean equals(Object o){ if (!o.instanceof Classe) return false .... Classe c=(Classe) o; ... mi chiedevo in fondo cosa serve questo cast dato che essenzialmente chi chiama il metodo passa un oggetto della classe da analizzare ma poi tecnicamente l' oggetto ha passato il test dell' instanceof. è solo qualcosa di stilistico o quale utilità ha? |
![]() |
![]() |
![]() |
#2 | |
Bannato
Iscritto dal: Feb 2003
Città: Anche Chuck Norris usa Debian e Gnome
Messaggi: 1270
|
Quote:
|
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Mar 2007
Messaggi: 7863
|
|
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Mar 2007
Messaggi: 7863
|
risolto va fatto perchè altrimenti non è possibile utilizzare i metodi della sottoclasse di Object in esame.Però sono curioso della diversa implementazione di equals.
|
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Mar 2007
Messaggi: 7863
|
questa è l' implementazione del metodo equals che viene insegnata ovunque e si trova su tutti i libri.
alcuni utilizzano questa variante che personalmente non condivido: class Classe{ public boolean equals(Object o){ if(o==null||! o instanceof Classe)return false Classe c=(Classe) o; return equals(c);} private boolean equals(Classe c){............................. qui si stabiliscono i criteri di uguaglianza} Ultima modifica di nuovoUtente86 : 26-06-2007 alle 23:48. |
![]() |
![]() |
![]() |
#7 |
Bannato
Iscritto dal: Feb 2003
Città: Anche Chuck Norris usa Debian e Gnome
Messaggi: 1270
|
|
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Mar 2007
Messaggi: 7863
|
|
![]() |
![]() |
![]() |
#9 | ||
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
Quote:
Tra l'altro il tuo è sbagliato: l'operatore ! ha priorità maggiore rispetto a instanceof. Poi il test per diverso da null non servirebbe nemmeno visto che il test con instanceof è già in grado di restituire false se 'o' è null.
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
||
![]() |
![]() |
![]() |
#10 |
Senior Member
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
|
Io l'ho visto. Non mi ricordo dove
![]() Non mi ricordo se fosse private e neanche quale fosse lo scopo... insomma, è proprio una vaga sensazione, però qualcuno lo fa o lo ha fatto.
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me! |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 13:49.