本帖最后由 whocases 于 2012-6-29 11:51 编辑
先看下代码
class Demo{
String temp = "hello" ; // 此处为了方便,属性暂时不封装
};
public class RefDemo{
public static void main(String args[]){
Demo d1 = new Demo() ; // 实例化Demo对象,实例化
System.out.println("fun()方法调用之后:" + d1.temp) ;
}
public static void fun(Demo d2){ // 此处的方法由主方法直接调用
d2.temp = "itcast"; // 修改temp值
}
};
我想问的是 当String作为一个类的成员时 它在堆中具体是怎么回事
比如 上述代码中 d2.temp = "itcast"; 修改Sring类对象时 是不是一样先是创建一个匿名对象 再用temp引用它。。。??如果是这样 那么是不是 原来的“hello”就成垃圾了。。。
|
|