1、try,catch,finally
package com.oop.demo8;
public class ExceptionTest {
public static void main(String[] args) {
int a=1;
int b=0;
//可以抛出多层异常,但是异常的捕获类型要从小到大,
try {
System.out.println(a/b);
}catch (Error e){
System.out.println("ERROR");
}catch (Exception e){
System.out.println("exception");
}catch (Throwable e){
System.out.println("throwable");
}finally {
System.out.println("finally");
}
}
}
输出
exception
finally
2、throw,throws基本使用
package com.oop.demo8;
public class ExceptionTest {
public static void main(String[] args) {
try {
new ExceptionTest().test(1,0);
} catch (Exception e) {
e.printStackTrace();
}
}
//如果方法中处理不了异常,就需要使用throws向外抛出
public void test(int a,int b) throws ArithmeticException{
if(b==0){
throw new ArithmeticException();
}
}
}
/*
int a=1;
int b=0;
//可以抛出多层异常,但是异常的捕获类型要从小到大,
try {
System.out.println(a/b);
}catch (Error e){
System.out.println("ERROR");
}catch (Exception e){
System.out.println("exception");
}catch (Throwable e){
System.out.println("throwable");
}finally {
System.out.println("finally");
}
*/
输出
java.lang.ArithmeticException
at com.oop.demo8.ExceptionTest.test(ExceptionTest.java:15)
at com.oop.demo8.ExceptionTest.main(ExceptionTest.java:6)