异常的简单阐述

异常的概述

异常:异常就是系统中出现了问题。

 

处理异常的基本思路:第一:杜绝异常,不要让异常产生

第二:避免不了的异常:尽可能的降低异常产生的可能性,且降低在产生异常之后所造成的影响。

 

处理异常:就是降低异常出现的可能性及其所造成的影响,例如生活中打雷下雨是避免不了的,所以我们有避雷针,雨伞,雨衣等措施来应对,在java中有着一套异常的处理机制来处理异常。

 

对待异常:应当尽早的去处理异常,如在可能产生异常的时候就去处理异常:例如在传值的时候就做好一个判断,并返回给调用者。尽早的处理异可以降低损失,让错误的数据传播到多个系统后,会造成连锁反应,大火起于火苗,尽早的处理问题,可以有效的降低工作量,提高效率。

 

与传统的异常处理方式的比较

传统:一般是通过return返回错误信息

  1. 这样返回的信息不够全面
  2. 因为return语句和普通的代码重合,增加了代码阅读的复杂度
  3. 可维护性差

现在:异常处理机制

  1. 对异常进行了分类,便于找出问题,且信息全面
  2. 和代码进行了分离,简化了代码
  3. 便于灵活的处理异常数据

 

Throw关键词(抛出异常)

当程序运行中,有问题可能出现,可以使用条件判断if,并且使用关键词throw来抛出异常

 

异常的两种处理方式

第一种 使用throws 在方法名后 throws Exception的方式抛出异常(交给方法的调用这,上调寻找处理异常的方法,没有处理的话,最后会交给虚拟机处理异常)

第二种:使用try.. catch 的方式捕获异常

Try catch时的注意事项

  1. 可以有多个catch去捕捉异常 但是需要注意的是,子类异常必须写在父类异常的前面,因为如果父类写在前面,程序会直接报编译错误,而且父类在前的话,子类的异常是不会捕捉的,因为父类会先被捕捉,这里是一个向上转型。
  2. Catch可以直接捕捉Exception,如果有多个异常会一个一个的捕捉

因为Exception是所有编译期异常的父类,一般不捕捉运行期异常

 

捕获异常时catchException e

打印异常的几种方式

  1. System.out.println(e.getMessage()); 输出的是异常的文字信息
  2. System.out.println(e.toString());输出的包括异常名和异常的文字信息
  3. e.printStackTrace打印完整的异常信息

平常我们可能会使用到System.out.println(e),输出的和e.toSrting()是一样的

 

posted @ 2020-06-08 17:30  七七负柒柒  阅读(220)  评论(0)    收藏  举报