Java day07 异常

来源:互联网 发布:win10安装mac双系统 编辑:程序博客网 时间:2024/06/16 16:51
/*异常 是对 程序运行过程中可能出现的错误的封装级别 一般错误 Exception 严重错误 Error作用:暴露错误,对传入参数进行甄别结构throws 异常类名——写在可能出现异常的方法声明后try{可能出现错误的代码}catch(异常类/变量){处理方式}——catch可以不写/可以有多个catch(类似于case),但处理完第一个问题之后就结束程序finally即便catch中有return,仍然执行的部分,举例 取消与数据库的连接,释放资源处理完问题后程序终止若在方法内部出现throw关键字,要么try,catch捕获异常,要么在可以方法声明throws 抛给调用者——对涉及该可疑代码的方法都要如此异常类 越具体越好实际操作时,在catch中使用输入输出流存储至文件日志中自定义异常——对违反自己定义的规则时的处理throws 和throw 的区别 位置 前者在方法声明上,后者在方法体中后接  前者后接若干个异常类(逗号隔开),后者跟异常对象方法内抛throw,方法声明要标识throws(RuntimeException的子类除外)但是呢,若throw的异常对象在本方法内解决,即有了catch(){没抛},则不用声明RuntimeException 若在方法体内抛出异常,方法上不用声明若在方法上声明了,调用该方法的方法无需处理(try/抛)定义:运行时错误,当到此错误时,运行中止,让程序员修改错误*/class NegativeException extends Exception{}class Divide{int div(int x,int y)throws NegativeException{if(y<0)throw new NegativeException();return x/y;}}class Divide_0_Exception{public static void main(String[] args) {Divide d=new Divide();try{int r=d.div(4,-1);}catch (NegativeException n){System.out.println("Have divided negative number");}System.out.println("Over");}}



0 0
原创粉丝点击