Quote Originariamente inviata da el92 Visualizza il messaggio
Quindì ogni volta che in una classe uso equals() dovrei implementarlo da qualche parte del codice perchè il metodo funzioni correttamente... giusto?
Non penso sia proprio così: il metodo ereditato da Object di per sé funziona, ma non fa altro che controllare l'uguaglianza dei reference (quindi se non ridefinito è uguale al confronto che faresti con ==).

Il senso di ridefinire equals() è il fatto che puoi stabilire tu i criteri che devono soddisfare due istanze di una stessa classe per essere considerate uguali, ad esempio nel caso delle stringhe, come noto, il metodo equals() controlla l'uguaglianza del contenuto delle stringhe.

Spero di non avere frainteso, in caso ci penserà andbin a correggermi