question: public String ( StringBuffer buffer ) { synchronized ( buffer ) { this . value = Arrays . copyOf ( buffer . getValue ( ) , buffer . length ( ) ) ; } }
target:  Allocates a new string that contains the sequence of characters currently contained in the string buffer argument. The contents of the string buffer are copied; subsequent modification of the string buffer does not affect the newly created string.