【发布时间】:2009-10-07 22:11:00
【问题描述】:
是否可以在编译时进入无限循环?
当我尝试编译时,我的程序似乎进入了一个无限循环。我有一个带有类构造函数的类,它调用方法 gameRun()。 gameRun() 在执行结束时调用自己,但应该有适当的检查才能在运行时中断它......但是当我尝试编译该类时,我实际上似乎得到了一个无限循环。
我对编译的理解是它实际上并没有执行代码......这意味着除非编译器的源代码中确实存在严重的错误,否则不可能进入无限循环。这是正确的吗?
我正在使用 Java 编写代码,并且正在使用 BlueJ(我正在从中成长的初学者 IDE)作为我的 IDE。
提前致谢。
.....................................
感谢大家提供这么多有用的回复。只是想我会发布一个更新,因为这似乎引起了一些兴趣,我自己也很好奇。
自从我发布原始错误以来,我没有对 BlueJ 或这个错误做很多事情,因为我已经从项目中获取了源文件,并且能够成功地使用 eclipse 编译和运行它们。这向我表明这是一个 BlueJ(或相关)问题。我继续使用 eclipse 进行这个项目,没有任何这种性质的问题。当我能够再次使用带有原始项目的机器时,我将跟进有关该问题的更多详细信息。 (从那以后什么都不应该改变)
.....................................
作为事后的想法...有什么方法可以将此问题链接到自发布以来我创建并注册的帐户?我找不到这样做的方法,它会使跟踪更方便...
【问题讨论】:
-
注释掉这个电话有帮助吗?
-
多个
jstack/ctrl-`/ctrl-break`告诉你任何有用的东西。 -
您能从新帐户编辑这个问题吗?如果没有,请在 MetaStackOverflow 询问。
标签: java infinite-loop compile-time