java基础的问题,高手请进.

来源:百度知道 编辑:UC知道 时间:2024/09/24 12:29:32
String str = new String (“Practical ”) ;
str += “Java” ;
共产生几个对象:__________。
分别是哪几个?谢谢了.有人说是产生五个对象,感觉挺奇怪的.
对啊。怎么看也不像是五个啊。我模糊的记得老师曾经也讲过这个问题,好像也说是五个。我现在怀疑如果将str+="java"改成str=str+"java"可能产生的对象个数是不一样的.

共三个对象,其中
对象1:变量str,
对象2:常量"Practical "
对象3:常量"Java"

new String (“Practical ”) 这个肯定是一个
“Java” 这个也是。
其他就等高人补充!

1."Practical"
2.new String (“Practical ”)
3."java"
4."Practical Java"
还有就不知道了~~~貌似没了吧
所以说使用string的时候,直接用赋值语句就可以了,不用构造器

提醒以下,楼下说的不对。
java中对于string,没有什么变量不变量的,string类型对象就是不能变的,可以变的只是引用,这里只有一个引用就是str,垃圾回收机制中,认为只要一个对象没有任何引用指向它,就说明他是废物,可以回收了,如果要让string对象变化,必须用stringbuffer类才行。。。

我也认为是四个。

三楼是对的