假设int [] a = new int [];它会创建一个新对象吗? 还有一个问题。 如果int [] a = {1,4,5,6}这里它会创建一个新对象吗?如果它创建了一个>新对象,那么它将如何创建
答案 0 :(得分:1)
如果您正在谈论Java,那么答案是肯定的,它将创建一个新对象
Java语言规范第4.3.1节明确指出:
对象是类实例或数组。
此外,
在Java编程语言中,数组是对象(§4.3.1),是 动态创建,可以分配给Object类型的变量 (§4.3.2)。可以在数组上调用Object类的所有方法。
答案 1 :(得分:0)
数组只是对象。数组是保存基元或对象
的引用的对象答案 2 :(得分:0)
Java Arrays是具有合成糖的对象。
int [] a = new int[2];
a[0] = 1;
a[1] = 2;
System.out.println(Arrays.toString(a));
您也可以声明数组
int [] a = {1,2};
无论您如何声明数组,它都是一个Object。是否有一个长度字段,另外你可以将它强制转换为一个对象,
int[] a = { 1, 2 };
Object o = a;
System.out.println(o.getClass().getName());
输出不幸的名字,
[I
您可以使用反射包中的Array
实用程序
System.out.println(Array.get(a, 0));
来自Array
Javadoc,
Array
类提供动态创建和访问Java数组的静态方法。