读书人

quot;aquot;代表一个匿名String对象那末new

发布时间: 2011-12-06 23:05:08 作者: rapoo

"a"代表一个匿名String对象,那么new StringBuilder("a")是不是产生了两个对象?
--

[解决办法]
是两个对象,"a"一个,new StringBuilder()一个
[解决办法]
产生两个对象
首在String池中找 是否 有 a 对象 , 有则不创建,没有则创建 一个a 对象在String池中
又有一个new 所以在内存上又创建一个a对象
所以共两个对象
[解决办法]
String a = new String("a");
第一个a在栈中,new String("a")中的a生成在堆中
栈中的a会指向在堆中的a
所以说有两个对象

读书人网 >J2SE开发

热点推荐