Sie deklariert eine Variable str
,
die eine Referenz auf ein String
-Objekt enthalten kann.
Es wurde noch kein Objekt erzeugt.
Ein Objekt existiert erst, nachdem es konstruiert wurde. Objekte werden erst zur Laufzeit eines Programms konstruiert, wenn ein Objektkonstruktor aufgerufen wird.
Sobald es existiert, kann
darauf über seine Referenz zugegriffen werden.
Oft wird die Referenz in einer Referenzvariablen wie str
gehalten.
Zum Beispiel,
das Folgende deklariert zuerst eine Referenzvariable,
konstruiert dann ein Objekt und stellt die Referenz darauf in str
:
String str; // eine Referenzvariable deklarieren str = "Hello World" ; // konstruiert das Objekt und // speichert seine Referenz
Natürlich, es ist OK eine Objektreferenzvariable zu deklarieren und keine Referenz hineinzustellen (sie könnte nur manchmal gebraucht werden). Und es ist OK dieselbe Referenzvariable für verschiedene Objekte zu verschiedenen Zeiten zu verwenden:
String str; str = "Hello World" ; . . . . str = "Good-bye" ;
(Denkfrage: ) Was könnten wir tun, wenn unser Programm 1000 verschiedene Strings im Auge behalten muss?