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 / amr
actually its a compiler error , variable already defined ..
but i'll answer the other part ,
String is immutable but does it make sense to write
String S1= abc;
S1=s1+"def";
YEAH its immutable and what happens behind the scene :
a new temporary String is created and using StringBuffer
which mutable class then appending then returning the
temporary string , thats the meaning of String is immutable
but StringBuffer is mutable , so if u r gonna use intensive
String manipulation u better go for StringBuffer because
String concatenation will result in more lines of code in
the byte code file generated when we compile .
this is a very frequent interview question .
| Is This Answer Correct ? | 4 Yes | 0 No |
Post New Answer View All Answers
Explain the difference between jdk, jre, and jvm?
what is the final keyword denotes in java?
Explain JMS in detail.
Explain why wait(), notify() and notifyall() methods are in object class rather than in the reading class?
Explain java coding standards for constants?
What languages are pass by reference?
What is the difference between a checked and an unchecked exception?
What a static class can contains?
Can we use different return types for methods when overridden?
What is the use of static class?
What happens when I use / and % with a negative numerator?
Can we have try without catch block?
Name component subclasses that support painting in java programming?
How do I remove a character from a string in java?
What is the difference between method overriding and overloading?