自定义异常:
package test.exception;
class ExceptionExam7_1 extends Exception {
private int show;
ExceptionExam7_1(int a) {
show = a;
}
public String toString() {
return "ExceptionExam7_1 <" + show + ">";
}
}
package test.exception;
public class ExceptionExam7 {
static void caculate(int a) throws ExceptionExam7_1 {
System.out.println("对[" + a + "]已经进行过相应的操作");
if (a > 100)
throw new ExceptionExam7_1(a);
System.out.println("执行该算法正常退出!");
}
public static void main(String args[]) {
try {
caculate(1);
caculate(1000);
} catch (ExceptionExam7_1 e) {
System.out.println("捕获了异常" + e);
}
}
}
异常流程的一个例子:
public class MultiNest {
static boolean procedure() throws Exception {
try {
int a = 0;
int b = 42/a;
} catch (Exception e) {
System.out.println("in procedure, catch ArithmeticException: " + e);
//System.exit(0);
throw e;
//System.out.println("####");
} finally {
System.out.println("&&&&&&");
return true;
}
}
public static void main(String[] args) {
try{
procedure();
} catch (Exception e) {
System.out.println("in main, catch Exception: "+e);
}
}
}