ARBEITEN MIT OBJEKTEN Flashcards

1
Q

Wovon erben alle Java-Klassen implizit?

A

Von der Klasse Object.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

toString()-Methode

A

Diese Methode dient der Ausgabe von beliebigen Objektinhalten als Zeichenkette.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Auslagerung der Konsolenausgabe in einer separaten Methode

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Überschreiben der toString()-Methode

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Impliziter Aufruf von toString() am Beispiel des „+“-Operators

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Darstellung primitiver Datentypen im Hauptspeicher

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

„==“-Operator

A

Objekte werden mit dem „==“-Operator hinsichtlich ihrer Identität, nicht hinsichtlich ihres Inhalts verglichen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

equals()-Methode

A

Diese Methode dient dem inhaltlichen Vergleich von Objekten.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Überschreiben der equals()-Methode in der Klasse Kunde

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Anforderungen an die Implementierung einer equals()-Methode

A

1) Reflexiv: Wird in der Methode dasselbe Objekt verglichen, muss das Ergebnis immer „true“ sein, d. h. x.equals(x) == true.

2) Symmetrisch: Es ist egal, in welcher Richtung der Vergleich stattfindet, d. h. x.equals(y) muss das gleiche Ergebnis liefern wie y.equals(x).

3) Transitiv: Wenn ein Objekt mit jeweils zwei anderen Objekten identisch ist, dann sind die anderen beiden Objekte ebenfalls identisch, d. h. wenn x.equals(y) und x.equals(z), dann auch y.equals(z).

4) Konsistent: Solange die relevanten Attribute unverändert bleiben, liefert eine Vergleichsoperation stets das gleiche Ergebnis.

5) Existent: Wenn ein zu vergleichendes Objekt nicht existiert, dann wird der Vergleich immer zu „false“ ausgewertet, d. h. x.equals(null) == false.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Was ist schneller? equals() oder ==

A

== schneller

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

hasCode()-Methode

A

Diese Methode liefert einen Schlüssel, der das Objekt anhand seines Inhalts möglichst eindeutig identifiziert.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Formel zur Berechnung des hashCodes() für einen gegebenen String

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Überschreiben der hashCode()-Methode in der Klasse Kunde

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Anforderungen an eigene hashCode()-Implementierungen

A

1) Die Methode muss stabil sein, d. h. zwei inhaltlich gleiche Objekte sollten stets den gleichen hashCode() erzeugen.

2) Die Berechnung muss zur equals()-Methode passen, d. h. sie muss die gleichen Attribute einbeziehen.

3) Die hashCodes() sollten möglichst „breit gestreut“ sein, d. h. nur sehr wenige unterschiedliche Attributbelegungen sollen den gleichen Hash-Wert erzeugen.

4) Es sollten nur identitätsstiftende Attribute einbezogen werden, d. h. die Identität ergibt sich nur aus fachlichen Attributen, die klar dem Objekt zuzuordnen sind. Auf andere Objekte verweisende Attribute, die nichts mit der Identität zu tun haben (Beispiel: Adresse des Kunden), sollten also nicht einbezogen werden.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Ordnung von Objekten

A

Diese gibt an, inwiefern die Objekte zueinander größer, kleiner oder gleich sind.

17
Q

Interface Comparable

A

Dieses definiert eine Schnittstelle zur Implementierung einer Ordnung.

18
Q

Eigene Implementierung von Comparable am Beispiel der Klasse Kunde

A
19
Q

„Wrapper“-Klassen

A

Diese kapseln primitive Datentypen in Objekte, sodass sie wie Objekte behandelt werden können.

20
Q
A