可能重复:
How are arrays implemented in java?
Why isn’t there a java.lang.Array class? If a java array is an Object, shouldn’t it extend Object?
我最近在考虑Java数组,我想知道它们究竟是什么?
他们是对象吗?
Object a = new int[5]
; 但是,它们真的是对象吗?
new int[5]
创建一个新数组......这就像没有构造函数一样
我见过的。人们会认为它是new Array<Integer>(5)
或类似的东西array
class ...你会找到Array
,但这不是一个数组它的可迭代属性是什么
iterator
数组方法我认为数组只是直接构建在Java语言中的一些特殊异常;然而,这也提出了一个问题:为什么阵列会得到特殊处理? (为什么没有Array API?为什么有不同类型的构造函数?)
任何关于阵列真实性质的澄清都将受到赞赏。
P.S。我有几年Java经验,所以我知道如何使用数组和他们做什么,我只是问它们是如何实现的,为什么?