编写java程序时如何强制结束程序

编写java程序时如何强制结束程序,第1张

可以用这个语句,他是用来强制让程序退出的。

Systemexit(1);

例子:

public class Test {

public void doSomething(){

Systemoutprintln("do something");

Systemexit(1);

Systemoutprintln("Cannot be done");

}

}

因为有Systemexit(1);语句,"Cannot be done"永远都没有办法打出来。

如果在一个循环里,想退出这个循环请用break;

如果在一个method中,想不执行下面的代码直接退出这个method请用return;

如果你想要程序直接中断退出,不执行后面的任何代码,请用Systemexit(0);

在Java中有专门终止某个线程的API,如stop()和interrupt()。其中stop()由于安全机制的我问题已经被废弃不用,现在就剩下interrupt。其实这个方法并不是一个终断动作的 *** 作,而是一个设置终断状态的 *** 作。它需要和isInterrupted()配合使用。例如:

package orgleadfar;

public class MyThread04 extends Thread {

private boolean stop = false;

public MyThread04(String threadName) {

super(threadName);

}

@Override

public void run() {

for (int j = 0; j < 100; j++) {

if(thisisInterrupted()) break;

Systemoutprintln(ThreadcurrentThread()getName()+":"+j);

try {

Threadsleep(1000);

} catch (InterruptedException e) {

eprintStackTrace();

}

}

}

public void setStop() {

thisstop = true;

}

//第一个线程

public static void main(String[] args) {

MyThread04 t = new MyThread04("辅线程");

tstart();

for (int i = 0; i < 10; i++) {

Systemoutprintln(ThreadcurrentThread()getName()+":"+i);

}

Systemoutprintln("");

tinterrupt();

}

}

但这个很可能不会终止线程,因为当我们终止这个线程时很可能就会发生InterruptedException异常,当有这个异常发生时我们设置的终断状态也会被清除,所以我们要终断某个线程应采用以下这个方法:

public class MyThread04 extends Thread {

private boolean stop = false;

public MyThread04(String threadName) {

super(threadName);

}

@Override

public void run() {

for (int j = 0; j < 100; j++) {

if(stop) break;

Systemoutprintln(ThreadcurrentThread()getName()+":"+j);

try {

Threadsleep(1000);

} catch (InterruptedException e) {

eprintStackTrace();

}

}

}

public void setStop() {

thisstop = true;

}

//第一个线程

public static void main(String[] args) {

MyThread04 t = new MyThread04("辅线程");

tstart();

for (int i = 0; i < 10; i++) {

Systemoutprintln(ThreadcurrentThread()getName()+":"+i);

}

Systemoutprintln("");

tsetStop();

}

}

public static void main(String[] args) {

Systemoutprintln("程序开始执行");

try {

// 延时 30 秒

Threadsleep(30 1000);

} catch (InterruptedException e) {

eprintStackTrace();

}

Systemoutprintln("已过30秒,程序结束");

//退出

Systemexit(0);

}

楼上两家的结合起来就实现了 程序运行 等待30秒后结束

以上就是关于编写java程序时如何强制结束程序全部的内容,包括:编写java程序时如何强制结束程序、java停止执行程序、如何停止一个正在运行的java线程等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9665514.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存