我正在尝试制作俄罗斯方块游戏,但出现编译器错误



当我尝试创建对象时

public class Test {
    public static void main(String[] args) {
        Shape s = new Shapes.ZShape();
    }
}

我为每个形状使用内部类。这是我的代码的一部分
public class Shapes {
    class AShape {
    }
    class ZShape {
    }
}

我究竟做错了什么 ?

最佳答案

ZShape不是静态的,因此它需要外部类的实例。

最简单的解决方案是制作ZShape和任何嵌套的类static(如果可以)。

我还可以将任何字段设为finalstatic final

09-25 22:17