可以用这个语句,他是用来强制让程序退出的。
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线程等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)