小编典典

不是封闭类 Java

all

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

Shape is not an enclosing class

当我尝试创建一个对象时

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

我为每个形状使用内部类。这是我的代码的一部分

public class Shapes {
    class AShape {
    }
    class ZShape {
    }
}

我究竟做错了什么 ?


阅读 100

收藏
2022-03-23

共1个答案

小编典典

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

最简单的解决方案是尽可能制作 ZShape 和任何嵌套类static

我也会做任何领域,final或者static final你也可以。

2022-03-23