黑马程序员技术交流社区
标题:
String之 内存问题
[打印本页]
作者:
b_boywindy
时间:
2012-2-28 11:44
标题:
String之 内存问题
String str = "abc";
str = new String("hehe");
当执行到第一句代码时,内存中产生了一个字符串对象 "abc",并将其引用赋给str。
当执行到第二句代码时,内存中又产生了一个字符串对象 "hehe",并将其引用赋给了str。
所以改变的只是引用而已,而并没有改变字符串 "abc"的内容,内存中产生了两个字符串对象。
那请问怎么打印出字符串"abc"呢? 难道不能打印了吗 ? 那岂不是占据了内存,或者说拜拜浪费了吗?
作者:
王睿
时间:
2012-2-28 17:14
当对象没有引用指向它时,垃圾回收机制就会把它回收的。
作者:
冯兵兵
时间:
2012-2-29 12:50
想打印“abc“的话,让str重新指向它就可以了即str=”abc“;system.out.println(str)。当没有引用指向“abc”的话,它会被垃圾回收机制回收;这一点就是java比C++好的地方。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2