If print() changes the value held in st,
will this change the actual object?
Answer:
No. Changing the reference will not change the object.
Changing a Reference Parameter
Here is an altered program in which the print() method
changes the value held in its formal parameter.
class ObjectPrinter2
{
public void print( String st )
{
System.out.println("First value of parameter: " + st );
st = "Hah! A second Object!" ;
System.out.println("Second value of parameter: " + st );
}
}
class OPTester2
{
public static void main ( String[] args )
{
String message = "Original Object" ;
ObjectPrinter op = new ObjectPrinter();
System.out.println("First value of message: " + message );
op.print( message );
System.out.println("Second value of message: " + message );
}
}
QUESTION 8:
What is the output of the program?