java - 通过命令行运行代码时出错

标签 java init

我有这个代码:

public class PlayGame
{

public static void main(String[] args)
{
    PlayGame p = new PlayGame();
    p.startup();
}


PlayGame p = new PlayGame();
GameLogic g = new GameLogic();

(格式正确)。启动类只有一些我知道工作正常的代码。它只是打印出东西。但是,在运行时我遇到了很多错误

at PlayGame.<init>(PlayGame.java:13)

这被重复了很多次,并且是我在命令行中看到的唯一内容。 我通过插入找到了

System.exit(0)

在出现错误之前退出行之间

PlayGame p = new PlayGame();

线。我不知道为什么会这样,所以非常感谢任何帮助。谢谢

最佳答案

PlayGame 类有一个实例字段

PlayGame p = new PlayGame();

因此,每个 PlayGame 对象都会创建一个 PlayGame 对象,该对象又会创建一个 PlayGame 对象,令人恶心。

您最终会耗尽内存并出现 StackOverflowError

为什么在 PlayGame 实例中需要一个 PlayGame 实例?

关于java - 通过命令行运行代码时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22426251/

相关文章:

java - 为远程调用引入压缩

Java - 为 Conways Game of Life 打印 2D 数组

python - Python中的继承和init方法

java - 了解 NoSuchMethod 异常中的方法签名

Python、__init__ 和 self 混淆

java - 关于第二个陈述,下列哪项是正确的? (拆箱和自动装箱)

java - 我无法从禁用文本中获取文本值

java - Gson:更改映射键的序列化方式

objective-c - 缺少 init 的后果?

Python __init__ 返回创建失败