A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© shang1jk 中级黑马   /  2013-6-18 18:02  /  2245 人查看  /  12 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

数组对象是什么类的实例?
例如
int[] a = {1, 2, 3};
这里的a是什么类的实例?

如果能用贴上验证代码就更好了!

评分

参与人数 1技术分 +1 收起 理由
Super_Class + 1 赞一个!

查看全部评分

12 个回复

倒序浏览
int[] 是一种数据类型
在你new的时候 相当于告诉编译器给它分配3个位置了,且位置里都装上了数据。

由于int[] a={1, 2, 3};只能放在一个类(比如well)里面
当这个放在public static viod main(String[] args){well i=new well();}里,这样就是一个实例了
所以说int[] a={1, 2, 3};这不能说是一个实例 。只有一个类被new了 那么才说它就是一个实例了。

评分

参与人数 1技术分 +1 收起 理由
Super_Class + 1 赞一个!

查看全部评分

回复 使用道具 举报
世界公民 发表于 2013-6-18 18:23
int[] 是一种数据类型
在你new的时候 相当于告诉编译器给它分配3个位置了,且位置里都装上了数据。

那写成这样呢?
int[] a = new int[]{1,2,3};

这里用new了, 那么a是哪个类的实例?
回复 使用道具 举报
shang1jk 发表于 2013-6-18 19:10
那写成这样呢?
int[] a = new int[]{1,2,3};

数组也是对象
回复 使用道具 举报
这里不是任何类的实例因为有类生成对象才成为类的实例化过程。下面说说数组吧:
数组只是用来存储同一种数据类型的数据,一旦初始化完成,即所占的空间就已固定下来,
即使某个元素被清空,但其所在空间仍然保留,因此数组长度将不能被改变。
你这里只是说明了数组的长度。

评分

参与人数 1技术分 +1 收起 理由
孙百鑫 + 1

查看全部评分

回复 使用道具 举报

是哪个类的实例对象呢?
回复 使用道具 举报
姚志远 发表于 2013-6-18 19:52
这里不是任何类的实例因为有类生成对象才成为类的实例化过程。下面说说数组吧:
数组只是用来存储同一种数 ...

数组不是某个类的对象吗?

我好迷糊啊.....
回复 使用道具 举报
  1. class Test
  2. {
  3.         public static void main(String[] args)
  4.         {               
  5.                 int[] a = new int[]{1,2,3};
  6.                  
  7.                 System.out.println(a.getClass());
  8.                 System.out.println(a.getClass().getSuperclass());
  9.         }
  10. }
复制代码
这样测试了一下, 输出的结果是:
class [I
class java.lang.Object

这样说明整型数组是 [I 类,
整型数组的父类是 Object类,
[I 可以理解成一个类名称吗?
回复 使用道具 举报
楼主您好~帖子长时间未作出回答,我已经将您的帖子改成已解决。如果有问题的话可以私密我哦~
回复 使用道具 举报
孙百鑫 发表于 2013-6-22 02:10
楼主您好~帖子长时间未作出回答,我已经将您的帖子改成已解决。如果有问题的话可以私密我哦~ ...

其实还没解决...
不过既然没人回答了, 就这样吧!
回复 使用道具 举报
shang1jk 发表于 2013-6-22 07:06
其实还没解决...
不过既然没人回答了, 就这样吧!

我觉得数组也是一个类。既然是类自然继承自Object
那么楼住说的
int[] a = new [3];

int[] a = {1,2,3,};
第二种是第一种的简写形式而已。a只是栈内存的中引用。而楼主说的是哪个对象的实例化。应该就是int[]数组类型的。
仅为个人意见,仅供参考。
回复 使用道具 举报
shang1jk 发表于 2013-6-22 07:06
其实还没解决...
不过既然没人回答了, 就这样吧!

我觉得数组也是一个类。既然是类自然继承自Object
那么楼住说的
int[] a = new [3];

int[] a = {1,2,3,};
第二种是第一种的简写形式而已。a只是栈内存的中引用。而楼主说的是哪个对象的实例化。应该就是int[]数组类型的。
仅为个人意见,仅供参考。
回复 使用道具 举报
孙百鑫 发表于 2013-6-22 07:24
我觉得数组也是一个类。既然是类自然继承自Object
那么楼住说的
int[] a = new [3];

具体到API文档中的哪个类呢?

java.xxx.xxx.Xxx这样子的话是哪一个?
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马