uebungen/Assignment_033/readme.md

31 lines
1.3 KiB
Markdown

# `equals()` und `hashCode()` implementieren und nutzen
[Musterlösung](solution/)
## Lernziel
Die Methoden `equals()` und `hashCode()` der Klasse `Object` korrekt überschreiben und nutzen.
## Aufgabe
Im Projekt finden Sie ein Paket [pr2.object.equals_hashcode](../sources/src/main/java/pr2/object/equals_hashcode/) mit zwei Klassen `Wesen` und `Ork` und einen Testfall `WesenTest`.
Wenn Sie den Test ausführen wird er nicht erfolgreich sein, da die Methoden `equals` und `hashCode` in der Klasse Ork fehlen.
Schauen Sie sich die `equals`- und `hashCode`-Methoden in `Wesen` an und versuchen Sie die Methoden zu verstehen.
Schreiben Sie im nächsten Schritt korrekte `equals`- und `hashCode`-Methoden für `Ork`. __Achtung:__ Sie sollten für Ihre Lösung die Klasse `Wesen` nicht verändern.
Führen Sie den Test erneut aus, um sicherzustellen, dass die Methoden richtig funktionieren.
## Abgabe (optional)
__Sie müssen keine Lösung für diese Aufgabe einreichen.__
Sie können Ihre Lösung aber auf die Konformität mit den Programmierstandards testen. Hierzu gehen Sie wie folgt vor:
1. Öffnen Sie eine Kommandozeile (Terminal).
2. Gehen Sie in Ihr Working Directory.
3. Wechseln Sie mit `cd` in das Verzeichnis `sources`.
4. Bauen Sie das Projekt mit dem Kommando `mvn`.