public class Main { /* what: exception copy with what character : 1.try catch finally 测试语句 捕获异常后不再终止程序 函数结束后输出异常类名字 异常产生类 方法 行数 2.小异常(小范围)在前 大异常在后 保证 大异常托底 例:java.lang.Object 继承者 java.lang.Throwable 继承者 java.lang.Exception 继承者 java.lang.RuntimeException 继承者 java.lang.ArithmeticException catch 3.小异常捕获后 大异常不再捕获 4.try中多个异常语句 只执行到第一个异常语句 后面全部不再执行 */ public static void main(String[] args) { int i = 10; System.out.println(i); //编译异常 不是运行异常 try{ System.out.println(i / 0); }catch(ArithmeticException e){ e.printStackTrace(); // 函数结束后 最后打印出堆栈信息 // what:类名字 异常由第几行产生 System.out.println("Arithmetic Exception 捕获"); }catch(RuntimeException e){ e.printStackTrace(); // 函数结束后 最后打印出堆栈信息 // what:类名字 异常由第几行产生 System.out.println("Arithmetic Exception 捕获"); }catch(Exception e){ e.printStackTrace(); // 函数结束后 最后打印出堆栈信息 // what:类名字 异常由第几行产生 System.out.println("Arithmetic Exception 捕获"); } System.out.println(" 捕获异常就不许结束程序啦。。。"); System.out.println(" 捕获异常就不许结束程序啦。。。"); System.out.println(" 捕获异常就不许结束程序啦。。。"); System.out.println(" 捕获异常就不许结束程序啦。。。"); } }