package com.test;public class Test_1 {
public static void main(String[] args)
{
String test1 = new String("test this word");
String test2;
int test3;
test3 = 10;
String test4 = null;
test2 = "";
test4 = "为test4这个字符串赋值";
test2 = "改变字符串 test2 的值";
System.out.println(test1 + test2 + test3 + test4);
}
}在以上代码中,String test2;这样是否占用了内存空间?String test4 = null; 呢?
String test2; 和 String test4 = null; 的区别在那里?
我在调试的时候,会发现,String 类型的对象未赋值的情况下是不会有独立id。
在MyEclipse调试的时候,变量那个视图中的id是指的什么?望各位高手予以指导。
第一次发帖,请大家多多指导啊。
String test2;这样是否占用了内存空间?:占内存
String test4 = null; 呢:占内存
只是第一种方法不安全,test4是安全的。String test1 = new String("test this word");
test1变量指向"test this word"内存区域,如果再赋值test1=null;
"test this word"内存区域变为垃圾,由JVM负责回收
而test1变量仍然占内存
String test4 = null; 呢? --已经占用了
String test2; 和 String test4 = null; 的区别在那里?--理论上讲几乎是一样的。
我在调试的时候,会发现,String 类型的对象未赋值的情况下是不会有独立id。
在MyEclipse调试的时候,变量那个视图中的id是指的什么?--指向内存地址