Wenn print() den Wert der in st enthalten ist ändert,
wird dies das aktuelle Objekt ändern?
Nein. Nicht das aktuelle Objekt. Das Ändern der Objektreferenz wird das Objekt nicht ändern.
Hier ist ein geändertes Programm, indem die print() Methode
den Wert ändert, den ihr formaler Parameter enthält.
class ObjectPrinter2
{
public void print( String st )
{
System.out.println("Erster Wert des Parameters: " + st );
st = "Hah! Ein zweites Objekt!" ;
System.out.println("Zweiter Wert des Parameter: " + st );
}
}
class OPTester2
{
public static void main ( String[] args )
{
String message = "Originalobjekt" ;
ObjectPrinter op = new ObjectPrinter();
System.out.println("Erster Wert von message: " + message );
op.print( message );
System.out.println("Zweiter Wert von message: " + message );
}
}