hashCode, equals und toString

Psypsy

Mitglied
Moin,

Eclipse hat ja die tolle Codegenerierung für die Methoden hashCode, equals und toString.

So jetzt habe ich zwei Klassen:
Java:
public class User

int eins;
String zwei;
OtherClass class;
&
Java:
public class OtherClass
int eine;
String name;
USser user;

Wenn ich jetzt die Methoden generieren lasse und das teste dann gibt es eine Endlosschleife da die eine Klasse auf die andere Zugreift und immer so weiter.

Wenn ich jetzt das unterbinden möchte und muss dann muss ich in einer der beiden Klassen statt des Objects nur seine Attribute Prüfe und dabei dann die Referenz zurück zur eigenen Klasse weglassen.

Das ist aber nervig wenn ich in der Klasse Atribute anpasse muss ich auch immer die Methoden alle mit anpassen!
Gibt es da nicht schon was von Ratiopharm?
Also wie kann ich es eleganter gestallten die Implementierung der drei Methoden ohne immer alle Attribute selber angeben zu müssen?

By
PsyPsy
 
Ich kapier nur Bahnhof. Was willst du ? Und was hat das da oben jetzt mit haskcodes, strings und equals zu tun????
 
Zuletzt bearbeitet:
Die Codegenerierung (von Eclipse) soll dir Schreibarbeit abnehmen. Du darfst nicht erwarten, dass der generierte Code immer deinen Wünschen entspricht. Du wirst ihn fast immer nachbearbeiten.

Gerade bei der equals und hashCode Methode musst du bei jedem neuen Attribut sowieso entscheiden, ob auch dieses Attribut einbezogen wird. Diese beiden Methoden verwenden üblicherweise nur wenige Attribute einer Klasse - die meisten Attribute werden in den Methoden nicht verwendet.
 
@Thallius:
1: schade, aber du hättest mich bitten können es genauer zu beschreiben!
2: eine Antwort!
3: einiges!

@Dompteur: Das ist mir klar das das nur eine Hilfe darstellt und auch nicht das allerbeste ist.
Aber ich bin eben nach einer Möglichkeit auf der Suche die das Einfacher macht oder minimiert diesen Aufwand das immer selber anpassen zu müssen.
Trotzdem erstmal danke, aber vielleicht hat ja jemand noch ne Idee?

By
PsyPsy
 

Neue Themen


Zurück
Oben