StringとStringBuffer

JavaでStringを+で連結することがあるが、Stringっていうのは変更不可能で、変更可能にするためにはStringBufferにしないといけないんじゃなかったの???とか不思議に思っていたのだが

String str = "Java" + "World" + 2003;

は、

String str = new StringBuffer().append("Java").append("World").append(2003).toString();

に置き換えられてるんだそうだ。ふーん、そうだったのか。
http://msugai.fc2web.com/java/class/StringsTips.html