没有调试器就控制Java程序执行

问题描述 投票:0回答:2

我想在没有调试器的情况下控制Java程序的执行,例如下面有一个类似的类

1. class Foo {
2.    void bar() {
3.        print("i am 3rd line of class Foo");
4.        print("i am 4th...");
5.        if(true)
6.            print("i am 6th");
7.    }
8. }

我想知道什么时候java将要执行上述任何一行,直到我不告诉它继续执行,它都应该等我!

如果您熟悉eclipse IDE]中的debugger,您肯定会知道,如果我们在java源代码中的某个地方放置breakpoint,则debugger将在该行暂停执行,然后等到我们按下step innext按钮才能执行下一行或程序语句。基本上,它控制着程序的执行,并获取每一个信息,例如声明的变量,当前运行的函数,当前执行行等。我也想要相同的功能,但我想使用的不是debugger使用我自己的Java代码。您可以说我想在代码中调试Java代码。

例如

:如果java正在执行第3行,它应该通知我我(java)要执行第3行,并且直到我不告诉它继续,它应该等待。

另一个例子

5. void bar() {
6.    // Inform me that java is going to execute line no. 7  
7.    print("Printing something...");
8.    // Again inform me that java is executing line no. 9
9.    print("bar");
10.}

简而言之,我想逐行控制程序的执行,我不在乎性能,只是想实现我的目标!

我试图使这个问题尽可能简单,但是如果您在理解上仍然有困难(这有点棘手),请在下面的评论框中告诉我!

提前谢谢;)

我想在没有调试器的情况下控制Java程序的执行,例如,下面是一个类。1.类Foo {2. void bar(){3. print(“我是类Foo的第三行”); 4. print(“ ...

java debugging execution
2个回答
2
投票

我可以想到两种方法,可能还有第三种。他们都是很多工作。我不推荐其中任何一个。


0
投票

您可以在要程序等待的任何地方使用System.in.read()。但是该程序仅在按enter键时才向前移动。这样的事情应该可以回答您的问题:

© www.soinside.com 2019 - 2024. All rights reserved.