// ReferenceParametersDemo.java
public class ReferenceParametersDemo {
public static void main(String[] args)
{
StringBuffer buffer = new StringBuffer("Hello!");
System.out.println("The original StringBuffer contained: "
+ buffer);
modifyObject(buffer);
System.out.println("After calling method modifyObject: "
+ buffer);
modifyReference(buffer);
System.out.println("After calling method modifyReference: "
+ buffer);
} // method main
public static void modifyObject(StringBuffer sb)
{
sb.insert(5, ", everyone");
System.out.println("Within method modifyObject: " + sb);
} // method modifyObject
public static void modifyReference(StringBuffer sb)
{
sb = new StringBuffer(sb.toString());
sb.insert(5, " again");
System.out.println("Within method modifyReference: " + sb);
} // method modifyReference
} // class ReferenceParametersDemo