The default freezing behaviour of an object is to make
all its fields immutable (including its class), and
freeze all references in all fields. A freeze hook can
be used to override this behaviour to replace all the
contents of the fields before the fields and their
contents are frozen, or to throw an exception.
The default freezing behaviour of an object is to make
all its fields immutable (including its class), and
freeze all references in all fields. A freeze hook can
be used to override this behaviour to replace all the
contents of the fields before the fields and their
contents are frozen, or to throw an exception.