异常处理两种方法

异常处理两种方法

0.什么叫异常

有两种

error:java虚拟机无法解决的严重问题

exception:其它因编程错误或偶然的外在因素导致的一般性问题,可以使用针对性的代码处理

1.try catch finally 异常处理

try必须跟catch或者finally同时使用

catch先子类再父类,try中从上而下,无论包不报错,最终都要用finally,实际工作中catch括号里边的exception基本用的都是子类,比如Runexception,很少直接用exception,因为这个比太大了,包含错误太多了,而现实中不是所有问题都要报错的,有些小的可以不报,所以基本都用子类

2.throw和throws关键字

代码:

public static void function() throws NumberFormatException{
    String s = "abc";
    System.out.println(Double.parseDouble(s));
  }

  public static void main(String[] args) {
    try {
      function();
    } catch (NumberFormatException e) {
      System.err.println("非数据类型不能转换");
      //e.printStackTrace();
    }
}

倒数第三行这个NumberFormatException e,实际上前面可以看作一个类,后边这个e是这个类的一个对象,try里边的错误都存在储在了这个e中,如果后边用了log.error(“有部分属性无法删除,{0}”, e)这种形式,就代表将来输出的语句是“有部分属性无法删除NumberFormatException”

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值