问题描述:
请问在java在如何关闭java自己启动的程序呢?
解析:
我详细说一下吧
java程序启动之后,JVM(java虚拟机)会实例化一个Runtime类,这是一个运行时类实例,包含这个java程序运行的所有信息,一个程序会实例化一个Runtime类且只能实例化一个Runtime类。我们可以通过这个Runtime类实例 *** 作程序的运行。它的exit(int status)方法会终止程序的运行。例:
Runtime.getRuntime().exit(0)
其中参数status表示状态,0表示正常退出,非0表示异常退出。非0参数有什么用呢?
addShutdownHook(Thread hook)方法可以将一个Thread可程序的关闭hook(挂/联系)起来,程序退出前,会执行这个方法,这样我们可以根据退出状态作相应的善携穗后 *** 作。
另外,System.exit(int status)也是调用这个Runtime类实例的退出方法来间接实现程序的退出的。
再加一点,Runtime类可以创建子进程,如下:
Process p=Runtime.getRuntime().exec("notepad")
这腔隐游个语句将会创建一个记事本程序(它是Runtime类创建的伍销子进程)
p.destroy()
这个语句终止刚才创建的子进程。
在java程序中激猜镇,可以使用java.lang.System的exit方法来终止程明粗序的执行,publicstaticvoidmain(String[]args){System.out.println("开始进入程序")//dosomethingSystem.out.println("兆扰程序准备退出了!")System.exit(0)//下面这句话将java运或衫携行出现死循环时,在dos命令行界面下,可以直接使用ctrl+c的组合键来停止程序,ctrl+c组合键在dos命令行界面中可以不用等待程序衫伏正常运行结束,直接终止程序;还可以直接点击dos命令行界面窗口的关闭按钮来结束程序。在开发工具eclipse或者Myeclipse中,可以直接点击运行控制台中的红色按钮来塌弊结束程序。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)