1、概念

  通常抛出异常后,还需要将异常捕获。使用 try 和 catch 语句块来捕获异常,有时候还需要用到 finally

  对于上述3个关键词所构成的语句块, try 语句块是必不可少的,catch 和 finally 语句块可以根据实际选择其一或者全选。可以把已经发生错误或者可能出现问题的语句放在try语句中,将异常发生后执行的语句放在 try 语句中,而 finally 语句块里面放置的语句,不管是否发生异常,都会被执行。

  另,不建议将所有有关代码都放入 try 语句块中,因为捕获异常对于系统而言,其开销非常大,所有应尽量减少该语句块中放置语句。

 

2、捕获异常编程实例

try {
    System.out.println("I am try block");
    Class<?> tempClass = Class.forName("");//声明一个空的Class用于引发“类未发现异常”
    System.out.println("Bye! Try block.");

}catch (ClassNotFoundException e){
    //下面定义catch语句块
    System.out.println("I am try block");
    e.printStackTrace();// printStackTrace的意义在于命令行打印异常信息在程序中出现的位置及原因
    System.out.println("Goodbye Catch block");
}finally {
    System.out.println("I am finally block");
}