Thanks Sefa and Maulin for respond to my post.
according to sun website
http://java.sun.com/docs/books/tutorial/java/data/stringsAndJavac.html "compiler automatically creates a new String object for every literal string it encounters, you can use a literal string to initialize a String. " and it goes on to describe that the following line of code
String s = new String("Hola Mundo");
would create two Strings.
"The compiler creates the first string when it encounters the literal string "Hola Mundo!", and the second one when it encounters new String. "