用Java创建对象数组

我是Java的新手,当时我用Java创建了一系列对象。

例如,我有A类

A[] arr = new A[4];

但这只是创建指向A的指针(引用),而不是4个对象。它是否正确?我看到当我尝试访问创建的对象中的函数/变量时,出现空指针异常。为了能够操作/访问对象,我必须这样做

A[] arr = new A[4];

for( int i=0; i<4; i++ )

arr[i] = new A();

这是正确的还是我做错了什么?如果这是正确的,那真的很奇怪。

编辑:我觉得这很奇怪,因为在C ++中,你只是说新的A [4],它创建了四个对象。

回答:

这是对的。

A[] a = new A[4];

创建4个A引用,类似于执行此操作

A a1;

A a2;

A a3;

A a4;

现在,如果不将a1分配为,就无法执行a1.someMethod()

a1 = new A();

类似地,你需要使用数组

a[0] = new A();

在使用它之前。

以上是 用Java创建对象数组 的全部内容, 来源链接: utcz.com/qa/419171.html

回到顶部