Nein. Das Ausführen der Objektmethode eines String
-Objekts ändert das Objekt nicht, aber erzeugt ein neues String
-Objekt.
Es erscheint ein bisschen seltsam, dass ein Objekt ein anderes Objekt erzeugen kann. Das ist nicht wie sich reale Objekte verhalten. Ziegelsteine erzeugen keine anderen Ziegelsteine. Autos erzeugen keine anderen Autos. Aber Softwareobjekte erzeugen häufig neue Objekte.
Softwareobjekte werden erzeugt:
Es gibt keinen Unterschied zwischen den Objekten, ob sie auf dem einen oder dem anderen Weg erzeugt wurden.
Die Methode substring()
eines String
-Objekts erzeugt ein neues Objekt, indem sie die Java Virtuelle Maschine auffordert ein neues Objekt zu erzeugen. Die virtuelle Maschine erzeugt das neue Objekt in der üblichen Weise, indem er den Instruktionen folgt, die in der Klasse enthalten sind.
Meint Ihr, dass es noch andere String
-Methoden gibt, die neue String
-Objekte erzeugen?