大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
在Java中,抛出异常之后,如果不对异常进行处理,代码会一直往调用的上层抛,直到线程的执行器,如果在这里异常仍然未得到处理,线程将停止执行。所以抛出异常后如果不对异常进行处理,后面的代码将不会执行。
创新互联-专业网站定制、快速模板网站建设、高性价比大兴安岭网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式大兴安岭网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖大兴安岭地区。费用合理售后完善,10年实体公司更值得信赖。
比如以下代码:
public void testException throws Exception(){
System.out.println("start");
throw new Exception("test exception");
System.out.println("execute ended?");
}最后一行代码在异常抛出之后,这行代码是不会执行的。
众所周知,在Java中,如果想跳出for循环,一般情况下有两种方法:break和continue。
break是跳出当前for循环,如下面代码所示:
public class RecTest {
/**
* @param args
*/
public static void main(String[] args) {
for(int i=0; i 10; i++){
if(i==5){
break;
}
System.out.print(i+" ");
}
}
}
输出:0 1 2 3 4
也就是说,break会跳出(终止)当前循环。continue是跳出当前循环,开始下一循环,如下所示:
public class RecTest {
/**
* @param args
*/
public static void main(String[] args) {
for (int i = 0; i 10; i++) {
if (i == 5) {
continue;
}
System.out.print(i+" ");
}
}
}
输出:0 1 2 3 4 6 7 8 9
以上两种方法没有办法跳出多层循环,如果需要从多层循环跳出,则需要使用标签,定义一个标签label,
然后在需要跳出的地方,用break
label就行了,代码如下:
public class RecTest {
/**
* @param args
*/
public static void main(String[] args) {
loop: for (int i = 0; i 10; i++) {
for (int j = 0; j 10; j++) {
for (int k = 0; k 10; k++) {
for (int h = 0; h 10; h++) {
if (h == 6) {
break loop;
}
System.out.print(h);
}
}
}
}
System.out.println("\nI'm here!");
}
}
输出:
012345
I'm here!
方案操作如下:
(1)让程序在一个单独的线程中运行,然后在终止时,可以用线程的终止方法来结束它。
(2)退出Java程序时尽量不要使用java.lang.System的exit方法。Exit 方法可以终止JVM,从而终止程序,但如果同时运行了另一个Java程序,使用exit方法就会让该程序也关闭,这显然不是希望看到的情况!!!!
要退出Java程序,可以使用destory()退出一个独立运行的过程。对于多线程程序,必须要关闭各个非守护线程。
只有在程序非正常退出时,才使用exit方法退出程序
System.exit(-1)终止当前正在运行的 Java 虚拟机,退出程序。其中参数按照惯例,是用非零的参数码表示异常终止。