只是一个简单的问题,但是为什么数组中的length
没有被封装呢?这是否仅适用于编程初学者,因为我觉得 getLength()
方法很容易实现。
最佳答案
我有一个假设,但我不能说这就是 java 设计者那样做的原因。
数组是一个具有固定长度的容器(当然也是一个对象)。这是一个非常基本的封装,因此在这种情况下封装会很好但并不重要。以ArrayList为例,可以认为是对数组的封装。
与封装它的其他类型相比,基本数组有很多好处。因此,也许当 Java 的第一个版本问世时,它缺乏今天所拥有的大部分优化。因此,拥有一个简单(就性能而言)数组的数据结构是一件好事。
也可能很简单,因为他们当时没有想到,后来他们不得不保持向后兼容性:)
无论如何,如果您发现有趣的东西(也许您可以发送电子邮件给 sun/oracle),请发帖! 这是一个很好的问题。
关于java - 数组长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9551536/