具体演示如下:
[java] view plain copy
package test;
public class TestShutDownHook {
public TestShutDownHook() {
doShutDownWork();
}
private void doShutDownWork() {
Runtime run=RuntimegetRuntime();//当前 Java 应用程序相关的运行时对象。
runaddShutdownHook(new Thread(){ //注册新的虚拟机来关闭钩子
@Override
public void run() {
//程序结束时进行的 *** 作
Systemoutprintln("程序结束调用");
}
});
}
public static void main(String[] args) {
new TestShutDownHook();
for (int i = 0; i < 1000; i++) { // 在这里增添您需要处理代码 }
Systemoutprintln(i);
}
}
}
在上述程序中,我们可以看到通过在程序中增加RuntimegetRuntime()addShutdownHook(new Thread()) 事件监听,捕获系统退出消息到来,然后,执行我们所需要完成工作,从而使我们的程序更健壮!
望采纳,谢谢。
java运行出现死循环时,在dos命令行界面下,可以直接使用ctrl+c的组合键来停止程序,ctrl+c组合键在dos命令行界面中可以不用等待程序正常运行结束,直接终止程序;还可以直接点击dos命令行界面窗口的关闭按钮来结束程序。在开发工具eclipse或者Myeclipse中,可以直接点击运行控制台中的红色按钮来结束程序。
很难,因为java程序运行需要虚拟机,只要把虚拟机的进程杀了,程序就会退出。所以基本上不可能阻止关闭。你可以把javaexe改名,改成个其他名字,这样还可以迷惑一下……不过依然达不到效果
在控制台输入零,所以就要用到Scanner这个类,代码如下:
Scanner sc = new Scanner(Systemin);让输入的值控制程序的关闭,代码如下:、
if("0"equals(scnextLine())){
Systemexit(0);//关闭当前进程。
}
import javaawteventKeyEvent;
import javaawteventKeyListener;
import javaxswingJFrame;
public class Test {
public static void main(String[] args) {
JFrame frame = new JFrame("任意键关闭");
framesetSize(200, 200);
framesetVisible(true);
frameaddKeyListener(new KeyEventImpl());
framesetDefaultCloseOperation(JFrameEXIT_ON_CLOSE);
}
}
class KeyEventImpl implements KeyListener {
@Override
public void keyPressed(KeyEvent e) {
Systemexit(0);
}
@Override
public void keyReleased(KeyEvent e) {
}
@Override
public void keyTyped(KeyEvent e) {
}
}
电脑JAVA更新程序永久关闭的方法如下
首先打开计算机的控制面板,“开始”-“控制面板”,如下图所示:
进入控制面板之后,选择“Java”并进入,如下图所示:
进入“Java控制面板”之后,点击更新,然后取消勾选“自动检查更新”,在接下来d出的对话框中选择“不检查”。如下图所示:
然后再点击“高级”,并在应用程序一栏中选择“从不安装”,如下图所示:
经过以上 *** 作之后,Java更新程序即可永久关闭了。
以上就是关于java多线程时程序运行完成为什么不会自动关闭退出全部的内容,包括:java多线程时程序运行完成为什么不会自动关闭退出、java运行时死循环了怎么用命令符把它停止掉、java做的程序如何隐藏进程,或阻止任务管理器把进程关闭等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)