本帖最后由 迷失的独白 于 2014-8-14 22:45 编辑
这是一个关于创建对象的问题
大家都知道
String str = "abc";str在内存中有一个字符串对象
String str1 = new String("abc");str1在内存中两个字符串对象
那么我有一个关于创建数组的问题
int[] arrs1 = {0,1,2,3,4};
int[] arrs2 = new int[5];
int[] arrs3 = new int[]{0,1,2,3,4}
三个数组在内存中的区别,分别有几个对象
还有一个数组的问题
int[][] arrs4 = {{3,2,5,8},{2,9},{3,4}}
这个数组创建了几个对象
我在别的地方查到了不一样的答案,我感到很困惑
一、四个对象,三个一维数组对象和一个二维数组对象的引用
二、八个对象,首先是4个java.lang.Class对象:分别是[I和[[I,还有java.lang.Object.class,
java.io.Serializable.class,然后是三个一维数组对象和一个二维数组对象
三、十个对象,3,2,5,8,9,4,{3,2,5,8},{2,9},{3,4},{{3,2,5,8},{2,9},{3,4}}
四、按照以上的综合一下,个人理解就有十四个对象
这个实在是困惑死了,希望有人能够解答我心中的疑惑
|