> > C++だとconstメソッドかどうかでぱっとわかるんだけど > > javaだとクラス設計として不変オブジェクトにするかどうか決めるし(;´Д`) > > 不変だと同期処理とか複数から参照されたときに変更されることとか > > 考えなくていいから > > つーかconstキーワードなんで採用しなかったんだろう > よくわからんけどマルチスレッドセーフの為にそんなことしてるの?(;´Д`) > StringBafferとかも別に危険ってわけじゃないのに > なんでStringの実装がそうなってのかよくわからん(;´Д`) 1.Stringはみんなよく使う 2.Stringをスレッドセーフにするために変更メソッドをsyncronizedすると遅くなる 3.syncronizedしないと使用者に同期制御を求めることになるけど Stringの使用頻度を考えると危険だよね 4.じゃぁ不変オブジェクトにしようぜ だと思うよ(;´Д`) 参考:2009/04/27(月)04時52分03秒