Java数组结构

Ash*_*bal 3 java arrays

我是Java编程的新手.在向前迈进之前,我正在清理所有的概念.我正在阅读一个数组章节,其中说创建数组的基本结构是:

Type[] var_name = new Type[limit];
Run Code Online (Sandbox Code Playgroud)

我正在浏览一些开放式课件.在这些幻灯片中,他们将类名插入到数组的类型中.例如:

public class Baby {
   Baby[] siblings;
}
Run Code Online (Sandbox Code Playgroud)

有人可以解释一下基本数组结构和类内部结构之间的区别.

bil*_*dev 5

我认为这可能只是混淆什么构成一种类型.供参考:

Type[] var_name = new Type[limit]
Run Code Online (Sandbox Code Playgroud)

"类型"必须替换为任何基本类型(int,double等)以及任何类(Baby,在您的情况下),例如:

String [] string_array = new String[10];
Run Code Online (Sandbox Code Playgroud)

如果这不是你遇到的问题,那么两个语句之间的另一个区别是第一个实际创建一个大小为"limit"的数组并将其赋值给变量var_name ...而在Baby声明中,只有成员变量婴儿班的"兄弟姐妹"被宣布.该变量可以容纳Baby数组,但该数组尚未创建.在Baby构造函数中,您可能会看到以下内容:

Baby() {
     siblings = new Baby[100];
}
Run Code Online (Sandbox Code Playgroud)

这将创建一个大小为100的Baby类对象引用数组,并将其分配给正在创建的Baby实例的兄弟成员.