黑马程序员技术交流社区

标题: 对异常的新认识 [打印本页]

作者: 虫虫同学    时间: 2015-8-29 12:03
标题: 对异常的新认识
throw  和throws 的区别:  
        1.throws 使用在函数上,throw使用在函数内。
        2.throws 后面跟异常类,可以用逗号隔开,throw后面跟的异常对象。
  1. class Demo
  2. {
  3.         int div(int a, int b)
  4.         {
  5.                 if(b==0)
  6.                         throw new ArithmeticException();//手动通过throw抛出一个自定义异常。
  7.                 return a/b ;
  8.         }
  9. }
复制代码

Exception中有一个特殊的子类异常RuntimeException(运行时异常),当在函数内抛出异常,函数上不用声明,编译一样通过。如果函数上声明了该异常,函数内部用处理。编译一样通过。之所以不在函数上声明,是因为不想让调用者处理,当异常发生时,希望程序停止,以为在运行时出现了无法运算的情况,希望停止运行程序后,对代码进行修正。
        在自定义异常发生时,如果运算无法进行,就让自定义异常继承RuntimeExcetpion.
        异常总结起来分为两种:一直是编译时被检测的异常,一种是编译时不被检测的异常,即运行时异常及其子类。
异常——finally
        finally代码块:是一定要执行的代码块。
        通常用于关闭资源。
作者: 胡述灵    时间: 2015-8-29 13:54
异常分为系统异常和自定义异常!
作者: cc3441251    时间: 2015-8-29 13:59
很好 刚学习这个部分
作者: 心之谷96    时间: 2015-8-29 14:44
顶一个。。。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2