为什么在Java中将数组声明为对象正确?

以下表达式编译:

Object oa = new float[20];

这个表达如何有效?

根据我的意见,正确的语法是

Object [] oa = new float[20];
数组是Java中的对象.所以一个浮点数是一个对象.

BTW,Object o = new Object [20];也是有效的,因为对象的数组是一个对象.

还要注意Object [] oa = new float [20];是无效的,因为原始浮点不是对象,因此浮点数组不是一个对象数组.什么是正确的

Object[] oa = new Float[20];

关于数组,由于它们是对象,它们具有java.lang.Object的所有方法.他们还具有公共的最终属性长度,它们是可克隆的和可序列化的:

Object o = new float[20];
System.out.println("o instanceof Serializable = " + (o instanceof Serializable)); // true
System.out.println("o instanceof Cloneable = " + (o instanceof Cloneable)); // true
相关文章
相关标签/搜索