Wie viele Objekte gibt es in diesem Programm? Wie viele Referenzvariablen gibt es?
Es gibt ein Objekt (nachdem der new
-Operator gearbeitet hat)
und es gibt zwei Referenzvariablen.
Hier ist eine Abbildung, die die Situation in dem neuen Programm zeigt:
Jetzt ergibt die Auswertung des Ausdrucks strA == strB
true
,
da der Inhalt von strA
und von strB
der gleiche ist
(d.h. sie beide enthalten die gleiche Referenz).
String strA; // wird eine Referenz auf das Objekt enthalten
String strB; // eine weitere Kopie der Referenz auf das Objekt
strA = new String( "Der Gingham Hund" );
System.out.println( strA );
strB = strA;
System.out.println( strB );
if ( strA == strB )
System.out.println(
"Die gleiche Information in jeder der Referenzvariablen.");
Wenn zwei Referenzvariablen auf dasselbe Objekt verweisen,
wird der ==
-Operator wahr ergeben.
In dem neuen Programm, betrachtet der ==
-Operator die Inhalte der Objekte?