Annotates a class that cannot be changed after construction or a field that cannot
be modified after initialization.
This is broadly similar to the Java Concurrency in Practice annotation, except
that it can also be applied to a field to mark fields as immutable - for example
a List field that is initialized using
Collections.unmodifiableList(List)
;