StringBuffer

Stringオブジェクトは、変更不可の文字列を保持するものなので、本来は変更や連結などをする場合は、StringBufferを使うべき。

StringBuffer (Java Platform SE 6)
Java文字列メモ(Hishidama's Java String Memo)
【Javaの基本】なぜStringBufferを使うのか - Qiita

文字列連結には、appendを使う。

StringBuffer (Java Platform SE 6)

とすると、

sb.toString() = ABC
sb.toString() = ABCDEF
sb.toString() = ABCDEFGHI

連結できた。

Sample/java/StringBuffer/StringBuffer/src/StringBuffer at master · bg1bgst333/Sample · GitHub