In dem neuen Programm, betrachtet der == -Operator die Inhalte der Objekte?
Nein. Der == -Operator betrachtet nur den Inhalt der Variablen (hier die Referenz).
Bei primitiven Typen betrachtet der == -Operator ebenfalls nur den Inhalt der Variablen.
Zum Beispiel:
int x = 32;
int y = 48;
if ( x == y ) System.out.println("Sie sind gleich.");
Nur der Inhalt der Variablen x und y
werden untersucht. Aber bei primitiven Typen besteht der Inhalt einer Variablen aus den Daten, also betrachtet == bei primitiven Typen die Daten.
Bei Referenzvariablen betrachtet == ebenfalls den Inhalt der Variablen,
aber jetzt enthalten die Variablen Objektreferenzen.
(Denkfrage: ) Könnten zwei verschiedene Objekte äquivalente (gleiche) Daten enthalten?