Java 将实例化对象传递给方法时出现空指针异常

Java 将实例化对象传递给方法时出现空指针异常,java,exception,Java,Exception,我有一个简单的类,其中构造函数创建一个对象数组,并获取数组中每个对象的哈希代码,如下所示。在运行时,当调用System.identityHashCodeObject x时,程序抛出空指针异常。我已经实例化了这个对象。为什么会发生异常 public class ArrayOfObjects { private Object[] array; private int[] arrayIdentity; public ArrayOfObjects(int N) {

我有一个简单的类,其中构造函数创建一个对象数组,并获取数组中每个对象的哈希代码,如下所示。在运行时,当调用System.identityHashCodeObject x时,程序抛出空指针异常。我已经实例化了这个对象。为什么会发生异常

public class ArrayOfObjects 
{
    private Object[] array;
    private int[] arrayIdentity;

    public ArrayOfObjects(int N)
    {
        array = new Object[N];
        for (int i = 0; i < N; i ++)
        {
            array[i] = new Object();
            **// The line below throws null pointer exception.**
            arrayIdentity[i] = System.identityHashCode(array[i]); 
        }
    }

    public static void main(String[] args) 
    {
        ArrayOfObjects arrayOfObjects = new ArrayOfObjects(10);  

        // Do something.
    }
}
您还需要实例化arrayIdentity:

array = new Object[N];
arrayIdentity = new int[N];