抛出对应的异常
public static void main(String args[]){ //((MMTest)null).testMethod(); try { System.out.println("++++++++++++++算术异常"+"++++++++++"); // System.out.println(1/0); System.out.println("++++++++++++++越界异常"+"++++++++++"); System.out.println(new int[] {}[0]); } catch (ArithmeticException e) { // TODO: handle exception System.out.println("算术异常"+e.getMessage()); } catch (ArrayIndexOutOfBoundsException e) { // TODO: handle exception System.out.println("越界异常"+e.getMessage()); }catch(Exception e){ System.out.println(e.getMessage()); }
}
这样只会抛出算数异常,越界异常因为没有执行到,所以不抛出,并且Exception也不会出现,且只能放在最后,放在前面会出现Unreachable catch block for ArithmeticException. It is already handled by the catch block for Exception 错误,放在后面如果前面有对应的异常,则他不会执行,前面没有抛出对应的异常,才会执行
