This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
Originally posted by Sandeep Potnis: Santoo, This looks likes a "passing a reference by value" issue. Try to re-think the question on those lines. Sandeep
I believe that is correct. When you pass an object as a parameter, you are passing a reference(actually a copy of the reference) and you can not effect the contents of the object without invoking a method. s2 = s1 simple changes the reference locally and does not effect the reference of the calling method. I hope that makes sense. Maybe somebody else can explain it better.