java - 数组中的长度字段

标签 java arrays string

众所周知,在 java String 类中有一个 length() 方法(为什么不用 getLength()?)。如果我们研究这个方法,我们可以看到:

public int length() {
    return value.length;
}

value是一个数组。我们为什么要访问一个字段?我知道这个字段是最终的,没有人可以改变它,但是多态性呢?我在哪里可以看到那个字段?在哪个级别?我找到了 java.lang.reflect.Array, 但是没有length这样的字段。

最佳答案

Where can i see that field? In which class?

如果你正在寻找字符数组声明

这是一个在顶部声明的字符数组。你可以看到这一点。

The value is used for character storage.
112 
113     private final char value[];

如果您正在寻找数组的length 字段

Array's are the part JVM implementation .您需要获取 JVM 的源代码才能对其进行分析/查看。

And why we access a field?

这就是可以知道数组长度的方式。

How about polymorthism? I know that this field is final and nobody can change it, but still what about polimorthis?

从没听说过它,如果你指的是多态性,那么这里没有什么可做的。

关于java - 数组中的长度字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32006690/

相关文章:

java - 使用 "Divide and Conquer"在 Java 中排序

java - Groovy 使方法从一个脚本到另一个脚本可见

java - Spring RestTemplate拦截器不执行请求

javascript - 使用 lodash 将对象数组转换为对象

regex - 修改 `sed` 以从字符串中删除确切的标签

c++ - 如果字符串在 C++ 中只有字母字符,如何检查字符串

java - "Can' t 找到 war 的导出处理程序”,同时尝试导出 WSO2 Web 应用程序

javascript - 如何使用 lodash/underscorejs 拆分具有特定条件的对象的 javascript 数组

arrays - 如何在 MATLAB 的数组中保存多个函数?

java - Android字符串资源无法访问: android. content.res.Resources$NotFoundException:字符串资源ID