【发布时间】:2021-04-21 06:55:07
【问题描述】:
Java 语言规范says:
对象是类实例或数组。
还有says:
数组 [...] 可以分配给 Object 类型的变量
但是the part that confuses me 是:
Object 类是所有其他类的超类
如果数组可以赋值给Object类型的变量,那么它一定意味着数组可以是Objects(不仅behave as,而是be)。那么就说明数组是一个类的实例,和第一个引号好像不一致(如果是,那为什么会被列为不同的东西呢?)。
这一切如何结合在一起?
【问题讨论】:
-
"那么它的意思是一个数组是一个类实例" - 不,第一个引号明确说“一个对象是一个类实例或 一个数组”。如果一个数组是一个类实例,那么“一个对象是一个类实例。”这句话就足够了。
-
第一句中的英文单词object指的是一个通用对象,即。一些可以被感官感知的物质。第三句中的 Object 指的是特定的 Java 类 Object。 Java 类实例数组仍然是对象数组,即。物质的东西。
-
是的,但是作为一个数组“可以分配给Object类型的变量”,这并不意味着数组不仅仅是一个对象,而是一个对象好吧,让句子“一个对象是一个类实例”就足够了吗?
-
这能回答你的问题吗? Is an array an object in Java?
-
@AldánCreo JLS 在哪里声明“一个对象是一个类实例[Period]”?