创建数组时的默认构造函数问题 Java

Default constructor issue when creating an array Java

我有以下 class:

public class ArrayObjects<E> implements SomeImp<E>{
    int maxCapacity, actualSize;

    public ArrayObjects(){
        maxCapacity = 10;
        array = (E[]) new Object[maxCapacity];
    }
}

Eclipse 标记错误并说明如下:

"array cannot be resolved to a variable"

它还显示了一些额外的细节:

-类型安全:未经检查从 Object[] 转换为 E[]

有谁知道我做错了什么?我的目标是在我的 class 构造函数中有一个数组,它可以容纳任何类型的对象(这就是我试图使其通用的原因)但显然这种方法行不通。

感谢您的帮助!!

错误消息会告诉您确切的问题所在。没有名为 array.

的声明变量
public class ArrayObjects<E> implements SomeImp<E> {
    int maxCapacity, actualSize;
    E[] array; // <- The missing declaration

    @SuppressWarnings("unchecked") // <- Suppress the "unchecked cast" warning
    public ArrayObjects() {
        maxCapacity = 10;
        array = (E[]) new Object[maxCapacity];
    }
}

就未经检查的转换而言,您能做的最好的事情就是如上所示抑制它。