Java异常处理

try catch 及 try catch finally

  try{

    //可能抛出异常的方法

  }catch((子类)Exception e){

    //处理该异常的代码块

  }catch((父类)Exception e){

    //......

  }finally{

    //最终将要执行的一些代码

  }

 如果try中的语句抛出了异常,将立刻进入catch语句中,而不会执行全部的代码

 e.printStackTrace()方法:  在命令行打印异常信息在程序中出错的位置及原因。相当于System.err.println()

 

程序在自动或手动(throw)抛出异常时会立即停止,如果有catch块则会进入catch语句中处理抛出的异常,然后执行catch块后的语句

 异常链:

  把捕获的异常包装成一个新的异常,再把新异常抛出,如:(以下代码将自定义异常MyException包装成了运行时异常,并包装后抛出)

实现方法一:(用initCause()方法来包装)

  try{

    ...

  }catch(MyException e){

    RuntimeException newExc = new RuntimeException("test");

    newExc.initCause(e);

    throw newExc;

实现方法二:

   try{

    ...

  }catch(MyException e){

    RuntimeException newExc = new RuntimeException(e);

    throw newExc;

异常概念详见:http://blog.csdn.net/swpihchj/article/details/8058129

throw和throws:http://blog.csdn.net/chaoyu168/article/details/48827303

程序在执行到throw语句时立即停止
原文地址:https://www.cnblogs.com/yaohunzhanyue/p/7099880.html