如何在java中进行系统暂停进行调试?

问题描述:

Java中是否有用于暂停程序的功能,如system("PAUSE");在C++中的功能?如何在java中进行系统暂停进行调试?

+0

什么是系统暂停? – 2009-09-09 19:09:53

+0

@ Lutz-我想这:http://www.gidnetwork.com/b-61.html – RichardOD 2009-09-09 19:19:21

+0

SYSTEM(“PAUSE”)用于C++,它基本上触发DOS命令暂停。你不应该在C++中使用它(有更好的方法来停止执行):D – 2009-09-09 20:14:48

调试最好用调试器完成,NetBeans(如果我查看其他问题,您似乎正在使用的)有一个。只需单击编辑器窗口的左边空白处即可设置断点并运行调试器。程序执行将在断点处停止,您可以查看变量的当前状态,或逐行执行程序。

+0

我第二个调试器。学习如何使用它,它会让你的开发生活更容易。网络上有很多链接。这里有一个可以帮助你开始的:Netbeans入门 - http://java.sun.com/developer/onlineTraining/tools/netbeans_part1/#debugging – JasCav 2009-09-09 19:42:19

+0

真棒!谢谢 – kokokok 2009-09-09 21:19:22

+6

这并没有真正回答这个问题。在编写控制台应用程序时,除了调试暂停应用程序执行外,还有其他原因。 – Ted 2012-04-26 13:25:39

你的意思是像Thread.sleep()?请详细说明是否需要进一步帮助...

我不太了解Java,但是如果您想调试,那么您可能需要使用调试器和断点来暂停执行。 如果你只是想等待键盘输入,然后检查出System.in.read,或类似的东西。

如果您尝试调试,请使用调试器。 Netbeans和Eclipse都内置了一个,我相信还有其他的。

如果您尝试让线程在另一个线程上等待,请使用thread.join()。

短期是肯定的,但你必须建立它使用标准输出System.out和使用Scanner类等待新线路输入(“\ n”)从标准输入从System.in

public class PauseTest { 

    public static void main(String args[]){ 

      System.out.println("Press Any Key To Continue..."); 
      new java.util.Scanner(System.in).nextLine(); 
    } 
} 

注意:我使用类中的Scanner包,但可以简单地添加导入java.util.Scanner;import java.util.*;基本上是一样的东西。

+0

'any'应该是'[enter]'? – 2013-03-05 23:12:02

在C++中有一个cin.get()或cin.ignore()的东西,它基本上让你按下Enter键退出程序,我知道它很俗气,但它的工作原理。 你可以做的是建立一个.nextLine(扫描仪),这样

import java.util.Scanner; 


public class Example { 

public static void main(String args[]){ 
    Scanner pauser = new Scanner (System.in); 

    System.out.println("!!!Hello World!!!"); 
    pauser.nextLine(); 
    } 

} 

那么用户必须按ENTER键退出程序。