Why final instance variables of a servlet are considered to be thread safe?
<i>--Agrah Upadhyay--</i><br />Final Year B.Tech SCJP,SCWCD,SCBCD <br /> <br /><b>Now since the real test for any choice is having to make the same choice again,knowing full well what it might cost.</b>-Oracle
Joined: Aug 12, 2001
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.