Why final instance variables of a servlet are considered to be thread safe?
posted 10 years ago
1. final --> implies it is immutable. It holds good in any java environment. Beware: If you are using object, if the properties inside the objects are not final then they are mutable and not thread safe.
Eg private final int _FIVE = 5 private final List _SHAPES = new ArrayList();
Here you cannot assign new values to _FIVE and _SHAPES cannot be made to refer to a different list.
This is invalid : Somewhere in your code you cannot do _FIVE = 10 _SHAPES = new ArrayList() On doing above you will get compilation errors.
But the objects with in _SHAPES can be mutated, depending up the objects which have been added to _SHAPES.