字符串
String類(lèi)中每個(gè)修改的String值的方法實(shí)際上都是創(chuàng)建了一個(gè)全新的String對(duì)象
String s="asdf" String x = Immutable.upcase(s) 對(duì)于一個(gè)參數(shù)來(lái)說(shuō)讨跟,參數(shù)是為方法提供信息的铃在,而不是讓一個(gè)方法改變自身涩赢,難道真的希望這個(gè)方法改變String本身嗎
重載與StringBuilder
如果希望使用toString()方法打印出對(duì)象的內(nèi)存地址時(shí),如果考慮使用this關(guān)鍵字姥闪,在System.out.println中直接打印對(duì)象時(shí),會(huì)發(fā)生自動(dòng)類(lèi)型轉(zhuǎn)換,而編譯器看到String后面跟著+,而再后面的對(duì)象不是String,那么會(huì)嘗試將this轉(zhuǎn)換為一個(gè)String,而這個(gè)轉(zhuǎn)換又是通過(guò)toString()方法來(lái)完成的测萎,因此無(wú)限遞歸。