What does it take to ensure thread-safe immutability in Java ? Jeremy Manson writes a three part series on the finer details of Immutability in Java, including Deserialization, Reflection, final fields and constructors. Read Jeremy's three part series on Immutability in Java Part 3 on Immutability in Java - Deserialization and Reflection: http://jeremymanson.blogspot.com/2008/07/immutability-in-java-part-3.html Part 2 on Immutability in Java: http://jeremymanson.blogspot.com/2008/07/immutability-in-java-part-2.html Part 1 on Immutability in Java: http://jeremymanson.blogspot.com/2008/04/immutability-in-java.html