Java ';必须使用类型为';
首先,我知道这个问题已经得到了回答,但是,我已经把所有我能找到的答案都找遍了,没有一个能帮上忙 我正在用LibGDX做一个游戏,用大像素模拟物理。为了创建不同种类的像素,我决定在我的Java ';必须使用类型为';,java,arraylist,libgdx,Java,Arraylist,Libgdx,首先,我知道这个问题已经得到了回答,但是,我已经把所有我能找到的答案都找遍了,没有一个能帮上忙 我正在用LibGDX做一个游戏,用大像素模拟物理。为了创建不同种类的像素,我决定在我的类型类中创建类,空白空间也是一种像素,我将其渲染为黑色,因此我在类型中有一个名为无的类,用于空白 在我的Main类中,我创建了一个ArrayList,其中包含包含类型的实例的ArrayList: public ArrayList<ArrayList<Types>> grid; ... fo
类型
类中创建类,空白空间也是一种像素,我将其渲染为黑色,因此我在类型
中有一个名为无
的类,用于空白
在我的Main
类中,我创建了一个ArrayList,其中包含包含类型的实例的ArrayList:
public ArrayList<ArrayList<Types>> grid;
...
for (int y = 0; y < 151; y++) {
ArrayList<Types> row = new ArrayList<Types>();
for (int x = 0; x < 105; x++) {
row.add(Types.None);
}
grid.add(row);
}
所以我希望现在有一个ArrayList,它包含151个其他ArrayList,每个ArrayList包含105个类型的实例。没有
但是,这不起作用
在类型的第10行
-公共静态类型无=新无()代码>-我收到此错误:
No enclosing instance of type Types is accessible. Must qualify the allocation with an enclosing instance of type Types (e.g. x.new A() where x is an instance of Types).
为什么会这样?我试过很多东西,但似乎都没用
谢谢。因为您要将None类的实例分配给一个静态字段,所以None类也必须是静态的。非静态内部类只能存在于其外部类的实例中
public static class None extends Types {
...
}
可能重复的
public static class None extends Types {
...
}