参照先をそのインスタンスに書き換えているというわけですな?そういうことであれば納得です。Test2インスタンスの内部文字列を書き換えているわけではなく、そもそもそんなことはできません。ライブラリを読んでください。「文字列オブジェクトの不変性」のセクションあたり。紹介しても、読んでもらえないのではがっかりです。参照先をそのインスタンスに書き換えているというわけですな?参照先の中身を直接書き換えたい場合は、このようなコードが必要になります。