I\'ve read around quite a bit but haven\'t found a definitive answer.
I have a class that looks like this:
public class Foo() { private
At this case only sharedData object is immmutable, that means only that all the time you will work with same object. But any data inside it can be changed (removed, added, etc) at any time, from any thread.