Two Laptop Bag
The moose likes Programmer Certification (SCJP/OCPJP) and the fly likes String Mutability Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Certification » Programmer Certification (SCJP/OCPJP)
Bookmark "String Mutability" Watch "String Mutability" New topic

String Mutability

Pankaj Shet
Ranch Hand

Joined: Sep 08, 2006
Posts: 289

Hi friends,
I want to know why are Strings Immutable?
I know that state of String object cannot be changed.
But this is the meaning of immutability. I want to know why cant the state of String objects be changed? what is the purpose of String immutabilty?
Help is always appreciated.
Thanks and Regards,

B.Sc.(I.T.), S.C.J.P., S.C.W.C.D., PGDAC(CDAC)
Stephan van Hulst

Joined: Sep 20, 2010
Posts: 4597

Mostly for ease of use and security, I figure.

Immutable types are very simple, and make it much easier for programmers to reason about the correctness of a program. You can easily pass Strings in and out of methods without worrying that internal state of an object is compromised, or that the String changes halfway through the execution of a method operating on it. Immutable types make it harder for a program to break, or for a malicious person to break it.

The mind is a strange and wonderful thing. I'm not sure that it will ever be able to figure itself out, everything else, maybe. From the atom to the universe, everything, except itself.
I agree. Here's the link:
subject: String Mutability
jQuery in Action, 3rd edition