/*
* TestException.java
* 2017年12月6日 下午2:37:47
* Copyright 2017 Fosun Financial. All Rights Reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* Please contact Fosun Corporation or visit
* www.fosun.com
* if you need additional information or have any questions.
* @author flyer
* @version 1.0
*/
package testFuxing;
/**
* 类功能描述
* @version
* @author flyer 2017年12月6日下午2:37:47
* @since 1.8
*/
public class TestException {
static int i = 0;
public static void main(String args[]) {
testDigui();
}
private static void testDigui() {
try {
int t = i / 0;
}
catch (Exception e) {
//new RuntimeException(e);
if (i < 3) {
System.out.println("递归前:" + i);
i++;
testDigui();
System.out.println("递归后:" + i);
}
i = 0;
System.out.println("最后执行:" + i);
}
}
}
输出为:
递归前:0
递归前:1
递归前:2
最后执行:0
递归后:0
最后执行:0
递归后:0
最后执行:0
递归后:0
最后执行:0
private static void testExceptionOrder1() {
int q[]= {1,0,8,19} ;
try {
for(int m:q) {
int t = 100 / m;
System.out.println("t:" + t);
}
}
catch (Exception e) {
System.out.println("最后执行:" + e);
}
}
private static void testExceptionOrder2() {
int q[]= {1,0,8,19} ;
for(int m:q) {
try {
int t = 100 / m;
System.out.println("t:" + t);
}
catch (Exception e) {
// e.printStackTrace();
System.out.println("最后执行:" + e);
}
}
}
第一个函数 会抛出异常,后面不执行
t:100
最后执行:java.lang.ArithmeticException: / by zero
第二个函数 抛出异常,不影响后面执行的
t:100
最后执行:java.lang.ArithmeticException: / by zero
t:12
t:5