throw,throws和层层抛出异常

throw和throws

2016-07-13


throw
–关键字throw用于显式抛出异常。
–抛出异常后处理:

               .使用try-catch捕获异常。
               .使用throws声明异常。

–语法

               .throw new 异常类构造方法
               .例如:  throw new Exception();

–利用抛出的异常来标记不正常的事件,从而对事件流统一处理。

static int avg(int n1,int n2) throws Exception{
      if(n1<0||n2<0) {  //用于判断参数是否满足条件。
         throw new Exception("不能使用负数!"); //显示错误信息。
         }
      if(n1>100||n2>100){
         throw new Exception("数值太大了!");
         }
         return (n1+n2)/2;  //返回平均值;
}

throws

–用于方法的声明处,指出方法引发的异常。

–可以声明多种方法异常类型,用逗号隔开即可。

     .例如: public void test throws 异常1,异常2,异常3{
                       ...........
             }

  1,任何方法都可以使用throws关键字声明异常类型,包括抽象方法。
  2,子类覆盖父类中的方法,子类方法不能声明抛出比父类范围更大的异常。
  3,使用了throws声明的方法,调用时必须处理声明的异常,要么使用try-catch,要么继续使用throws声明。

层层抛出异常

 catch语句中,处理异常后,再次用throw抛出该异常对象。
 继续抛出异常的作用:使得调用该方法的方法,能够再一次捕获并处理异常。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值