一 Java中的数组 这是一个物体 .现在的问题是,这怎么可能?这背后的原因是什么?在Java中,我们可以使用new操作符创建数组,我们知道每个对象都是使用new操作符创建的。因此我们可以说数组也是一个对象。现在问题也出现了,每次我们为一个类创建一个对象,那么数组的类是什么?
null
- 在Java中,每个数组类型都有一个类,因此int[]和float、double等都有一个类。
- 数组类型的直接超类是Object。每种数组类型都实现了Cloneable和java接口。伊奥。可序列化。
- 在Java编程语言中,数组是对象(§ 4.3.1 )动态创建,并可分配给Object类型的变量(§4.3.2)。类对象的所有方法都可以在数组上调用。
对于每种数组类型,都有相应的类可用,这些类是java语言的一部分,程序员级别无法使用。要了解任何数组的类,我们可以使用以下方法:
// Here x is the name of the array. System.out.println(x.getClass().getName());
// Java program to display class of // int array type public class Test { public static void main(String[] args) { int [] x = new int [ 3 ]; System.out.println(x.getClass().getName()); } } |
输出:
[I
注: [I这是这个数组的类,1[(方括号),因为它是一维的,I代表整数数据类型。 以下是为某些数组类型指定相应类名的表格:-
Array type Corresponding class Name int[] [I int[][] [[I double[] [D double[][] [[D short[] [S byte[] [B boolean[] [Z
在Java编程语言中,数组是动态创建的对象,可以分配给Object类型的变量。类对象的所有方法都可以在数组上调用。
// Java program to check the class of // int array type public class Test { public static void main(String[] args) { // Object is the parent class of all classes // of Java. Here args is the object of String // class. System.out.println(args instanceof Object); int [] arr = new int [ 2 ]; // Here arr is also an object of int class. System.out.println(arr instanceof Object); } } |
输出:
true true
参考: https://docs.oracle.com/javase/specs/jls/se7/html/jls-10.html
本文由 比沙尔·库马尔·杜比 .如果你喜欢GeekSforgek,并想贡献自己的力量,你也可以使用 贡献极客。组织 或者把你的文章寄到contribute@geeksforgeeks.org.看到你的文章出现在Geeksforgeks主页上,并帮助其他极客。
如果您发现任何不正确的地方,或者您想分享有关上述主题的更多信息,请写下评论。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END