| Author |
Difference between String
|
Rajendra Prakash
Ranch Hand
Joined: Sep 10, 2009
Posts: 293
|
|
I need the difference between string s="abc" and string s=new string("abc");
How many objects created for both .
The following i got from google , is it correct.
String s "abc"; is the simple case it will create one string object and one reference variable. "abc" will go into the pool and s will refer to it...
String s new String("abc"); it will create two objects and one reference variable.
java will create a new string object in the nonpool memory s will refer to it. the literal "abc" will be placed in the pool.
|
 |
Mohamed Sanaulla
Bartender
Joined: Sep 08, 2007
Posts: 2928
|
|
|
This was discussed recently and many times before. And what you have found is correct.
|
Mohamed Sanaulla | My Blog
|
 |
Rajendra Prakash
Ranch Hand
Joined: Sep 10, 2009
Posts: 293
|
|
|
can you say where string pool is located , inside heap memory or some where else
|
 |
Siddhesh Deodhar
Ranch Hand
Joined: Mar 05, 2009
Posts: 117
|
|
If you want to really confirm the answer, you can put statements
string s="abc" and string s=new string("abc"); in main function of say Test.java and deassemble the code using command
javap -c Test. It will show you the details.
|
Good, Better, Best, Don't take rest until, Good becomes Better, and Better becomes Best.
Sidd : (SCJP 6 [90%] )
|
 |
Jesper de Jong
Java Cowboy
Bartender
Joined: Aug 16, 2005
Posts: 12929
|
|
|
This is a frequently asked question - have a look at this post where I listed links to previous discussions of the same question.
|
Java Beginners FAQ - JavaRanch SCJP FAQ - The Java Tutorial - Java SE 7 API documentation
Scala Notes - My blog about Scala
|
 |
 |
|
|
subject: Difference between String
|
|
|