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
How do generics work?
What are generic methods?
What are the advantages of defining packages in java?
What does it mean that a class or member is final?
What is the difference between abstraction and encapsulation?
Why are global variables used?
What is pangram in java?
What is variable and rules of variable?
Explain Basics of OOP Language in java
What is final keyword?
Does garbage collection occur in permanent generation space in jvm?
What is ctrl m character?
What is a consumer in java?
What is methods and methodology?
What is a singleton factory?