什么是异常? 在程序执行过程中发生了不正常的情况,称为“异常”。 异常的作用:增强程序的健壮性。 异常的存在形式:以类和对象存在。
Error继承父类Throwable。表示错误,不可处理的异常,一旦发生只能退出JVM。
Error是Throwable的子类,用于标记严重错误。合理的应用程序不应该去try/catch这种错误。绝大多数的错误都是非正常的,就根本不该出现的。
Exception,可处理的异常。
Exception 是Throwable的一种形式的子类,用于指示一种合理的程序想去catch的条件。即它仅仅是一种程序运行条件,而非严重错误,并且鼓励用户程序去catch它。
异常又分为编译时异常和运行时异常。
RunTimeException 运行时异常。
ExceptionSubclass编译时异常:在编写程序时提前处理,否则编译器报错。
java语言对异常处理的两种方式: 1、在方法声明时使用throws关键字,抛给上一级。 相当于将异常抛给调用该方法/对象的上一级。
2、使用try…catch语句进行异常的捕捉。 try…catch表示在这个方法内,将其处理,不需要上抛。
try{ A; B; C; D;} catch(异常类型 e1){处理方法1;//默认或者自定义。 }catch(异常类型 e2){处理方法2;//默认或者自定义。 }catch(异常类型 e3){处理方法3;//默认或者自定义。 }catch(异常类型 e4){处理方法4;//默认或者自定义。 }当ABCD中任意一个程序片段发生异常,之后的程序不再执行,转到catch,捕捉异常。
finally语句与try…catch语句一起出现,无法单独出现,一般使用在IO流的关闭以及其他必须执行的时候。