If you declared object as final you can't reassign another object reference to the object.But we can change the instance member values.
final StringBuffer a = new StringBuffer("A");
final StringBuffer b = new StringBuffer("B");
b=new StringBuffer("BBBB"); // It shows error message
a.append("add1");
a.append("add2");
System.out.println(a );
Here object a reference can't be changed. so it doesn't show any error messages.
Raghu J<br />SCJP 1.4<br /> <br />The Wind and waters are always<br />on the side of the ablest navigators.<br /><a href="http://groups.yahoo.com/group/scjp_share" target="_blank" rel="nofollow">SCJP Group</a><br /><a href="http://groups.yahoo.com/group/JavaBeat_SCWCD" target="_blank" rel="nofollow">SCWCD Group</a>