Java中处理异常throw和throws
来源:互联网 发布:单片机系统电路原理图 编辑:程序博客网 时间:2024/05/23 12:04
throw关键字:语句抛出异常 throws关键字:声明异常(方法抛出一个异常)
代码块中可能会产生3个异常,(Exception1,Exception2,Exception3)。
如果产生Exception1异常,则捕获之后再抛出,由该方法的调用者去处理。
如果产生Exception2异常,则该方法自己处理了(即打印出字符串:自己打印提示,不抛出)。所以该方法就不会再向外抛出Exception2异常了,void dothing() throws Exception1,Exception3 里面的Exception2也就不用写了(当然你写了也不会报错的),throws 就是声明可能抛出的错误,而Exception2 并未做出抛出操作。
而Exception3异常是该方法的某段逻辑出错,程序员自己做了处理,在该段逻辑错误的情况下抛出异常Exception3,则该方法的调用者也要处理此异常。
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是具体向外抛异常的动作,所以它是抛出一个异常实例。
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,则该方法的调用者也要处理此异常。
0 0
- 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
- 浮点数及字符在计算机中的表示
- mybatis之XML映射文件
- ubuntu下andriod-webrtc编译步骤
- Swift 之UISegmentedControl
- Python获取股票历史数据和收盘数据的代码实现
- Java中处理异常throw和throws
- mybatis之动态SQL
- mybatis之JAVA API
- Spring配置文件中读取Properties文件的配置
- List<T>的各种排序方法
- 软件工程 基本概念
- mybatis创建SQL的类
- 【强烈推荐】开源C#工具类MSCL系列(一)配置帮助类
- mybatis日志