当我尝试运行我的程序时,java向我显示
at gridControl.<init>(gridControl.java:3)
at game.<init>(game.java:4)
它重复这些行,以至于我无法看到错误消息的顶部。
它指向的两行是:
Game.java:4 : gridControl Grid = new gridControl();
gridControl.java:3 : game Game = new game();
有什么想法吗?
答案 0 :(得分:3)
如您所见,第4行的Game.java引发了新的网格控制。 但是,你也可以看到第3行的gridControl.java引发了一个新的Gamecontrol。 所以基本上你最终得到一个递归无限循环:“新游戏 - &gt;新网格 - &gt;新游戏 - &gt;新网格”等等..
答案 1 :(得分:0)
DusteD是正确的。
要获取完整堆栈跟踪,请将输出(stdout和stderr)重定向到文件:java -cp classes my.package.Main > game.log 2>&1
你可能会看到由于gridControl和游戏的递归实例化导致的堆栈溢出错误。