Java中处理异常throw和throws
来源:互联网 发布:python教程 廖雪峰 编辑:程序博客网 时间:2024/05/16 23:47
Java中处理异常throw和throws
1.首先我们来了解什么是异常呢?
异常阻止当前方法或作用域继续执行的问题。
2.处理异常
说到处理异常,我们当然会想到 try catch finally
在java中我们会对异常的处理有更高的认识 我们会学习 throw throws等更好的处理异常
3.常见异常
4.throw关键字:语句抛出异常 throws关键字:声明异常(方法抛出一个异常)
01.throw 是语句抛出一个异常。
语法:throw (异常对象);
throw e;
02. throws 是方法可能抛出异常的声明。(用在声明方法时,表示该方法可能要抛出异常) 调用者必须做出处理(捕获或继续抛出)
语法:[(修饰符)](返回值类型)(方法名)([参数列表])[throws(异常类)]{......}
public void doA(int a) throws Exception1,Exception3{......}
03.throws可以单独使用,但throw不能, throw要么和try-catch-finally语句配套使用,要么与throws配套使用。但throws可以单独使 用,然后再由处理异常的方法捕获。
04.throw语句用在方法体内,表示抛出异常,由方法体内的语句处理
throws语句用在方法声明后面,表示再抛出异常,由调用这个方法的上一级方法中的语句来处理,必须做出处理(捕获或继续声明)
05.throws主要是声明这个方法会抛出这种类型的异常,使其他地方调用它时知道要捕获这个异常,使得提醒必须做出处理。否则编译是不会通过的。
throw是具体向外抛异常的动作,所以它是抛出一个异常实例。
eg:
public void dothing(int a,int b) throws Exception1,Exception3 { try{ //...... }catch(Exception1 e){ throw e; }catch(Exception2 e){ System.out.println("自己打印提示,不抛出"); } if(a!=b) throw new Exception3("自定义异常");}
代码块中可能会产生3个异常,(Exception1,Exception2,Exception3)。
如果产生Exception1异常,则捕获之后再抛出,由该方法的调用者去处理。
如果产生Exception2异常,则该方法自己处理了(即打印出字符串:自己打印提示,不抛出)。所以该方法就不会再向外抛出Exception2异常了,void dothing() throws Exception1,Exception3 里面的Exception2也就不用写了(当然你写了也不会报错的),throws 就是声明可能抛出的错误,而Exception2 并未做出抛出操作。
而Exception3异常是该方法的某段逻辑出错,程序员自己做了处理,在该段逻辑错误的情况下抛出异常Exception3,则该方法的调用者也要处理此异常。
- Java中处理异常throw和throws
- Java中处理异常throw和throws
- Java中处理异常throw和throws
- Java中处理异常throw和throws
- Java中处理异常throw和throws
- java异常处理中throw和throws的区别?
- 异常处理中throw和throws区别
- java异常处理throw和throws
- java异常处理的throw和throws
- java异常处理 throw throws
- Java异常处理中throw与throws的用法区别
- java异常处理之throw, throws,try和catch
- java异常处理的throw和throws的区别
- java异常处理之throw, throws,try和catch
- Java初学习-异常处理 throw, throws,try和catch
- java异常处理之throw, throws,try和catch
- java异常处理之throw, throws,try和catch
- java异常处理之throw, throws,try和catch
- 将格林威治时间转换为字符串
- 设计模式之桥接模式--合成复用原则
- 线程控制(一)
- 面向对象的基本写法和组成
- Python django 入门学习系列(二)
- Java中处理异常throw和throws
- 老生常谈的跨域处理
- 集训 8.2
- hadoop namenode高可用解决方案
- Linux运维进阶-文档总结-MySQL的主从分离
- 数字在排序数组中出现的次数
- Caffe testing picture demo
- tow weeks vim (7)
- Java进阶 创建和销毁对象