Using final the way you did makes the variable into a compile-time constant expression, which means at run time there's no need to load the class that originally defined it. [ October 14, 2006: Message edited by: Jim Yingst ]
Yes, evidently anagha didn't give us the correct code here. The problem described can be witnessed if the finalStr field is referenced from outside the class that defines it, e.g.