Reading this site, I\'ve found this:
[The] line
private static final Foo INSTANCE = new Foo();is only executed when the class is actual
It is guaranteed to be thread safe because the JVM guarantees that static initializers are executed on a single thread.
It doesn't mean that the instance of Foo is internally thread safe- it just means that you are guaranteed that the constructor of Foo will be called exactly once, on one thread, via this particular code path.