Immutability
An immutable object is an object whose state cannot be modified after it is initiated. This quality of immutable objects is essential in multi-threaded applications because it allows a thread to act on the data represented by immutable objects without worrying about changes from other threads. In addition, immutability provides lots of benefits, such as referential transparency and low coupling, which we will talk about in upcoming sections.
An object is considered immutable if the object itself, and in fact all of its properties, are immutable. In some cases, an object is considered immutable even if some of its internal properties change but the object's state appears to be immutable from an external point of view. For instance, ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access