Hi Megha,
All strings created here are created in String pool.
String name; //name is not initialized
String newName = "Nick"; //"Nick" created in String pool, newName refer it
newName = "Jason"; //"Jason" created in String pool
//newName refer to "Jason", reference to obj "Nick" lost
name = "Frieda"; //"Frieda" created in String pool
//name refer to "Frieda"
String newestName = name; //newestName refer to Frieda
//name and newestName refer to Frieda
name = null; //name reference is null, newestName still refer to Frieda
//at this moment, only reference to Nick is lost, so this object is elegible for GC