RFR: 6206780 (str) Forwarding append methods in String{Buffer, Builder} are inconsistent

Jim Gish jim.gish at oracle.com
Sat Oct 6 00:52:00 UTC 2012

I've revamped the previous proposed change.  Please review the update at 

This revision contains the following additions/changes:
1. consistent usage of @Overrides
2. comments on unsynchronized methods depending on other synchronized 
3. overall more code coverage of insert, append, indexOf, lastIndexOf, 
etc. for both StringBuffer and StringBuilder
4. testing of StringBuffer to ensure that all public un-synchronized 
methods are actually synchronized along their call chain.  the 
StringBuffer/TestSynchronization class uses reflection to decide which 
methods to test and could be (with a bit of work on method parameter 
setup), be used to test any class for these synchronization properties.  
The motivation for this test is to provide some degree of assurance that 
modifications to StringBuffer, particularly addition of new methods, do 
not break the synchronization contract. The code also includes a 
self-test to guard against breaking the test program itself.


Jim Gish | Consulting Member of Technical Staff | +1.781.442.0304
Oracle Java Platform Group | Core Libraries Team
35 Network Drive
Burlington, MA 01803
jim.gish at oracle.com

More information about the core-libs-dev mailing list