String is an immutable object.
Then how can the following code be justified.
String s1 = ?ABC?;
String s1 = s1+?XYZ?;
s.o.p(s1);
The output is ABCXYZ, which is the value of s1 ?
Answer Posted / k.shiva
here we define s1="ABC".That means one new string is
created.And this string value is stored in heap its
refrence variable is s1.when we say s1+"XYZ".Then string s1
i.e ABC and XYZ are concadinated by using concadination
operater.It forms a new string i.e "ABCXYZ" in heap.But
again we assign this value to the refrence variable
s1.Then "ABCXYZ" value is assign to s1 and the string "ABC"
which is garbage collected.
| Is This Answer Correct ? | 12 Yes | 4 No |
Post New Answer View All Answers
Give an example of call be reference significance.
What is meant by distributed application? Why are we using that in our application?
What is a boolean structure?
What is the static field modifier?
How can we make string upper case or lower case?
What is a protected method?
How does a for loop work java?
What do you understand by classes in java?
When should a function throw an exception?
How does arraylist work in java?
What happens if constructor is private?
Why Set interface contains unique elements, what internally implemented for this so that it contains unique elements?
How can you read content from file in java?
Can a class have 2 constructors?
How can I right-justify a string?