scala之异常处理

本文详细讲解了Scala中的异常处理结构,包括try块用于包含可能抛出异常的代码,catch部分处理不同类型的异常,以及finally块确保的必执行代码。特别介绍了Scala中只有一个catch且能处理多种异常的特性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

scala之异常处理

scala中的异常处理结构

try {
      异常代码块
    } catch {
      case ex: Exception
    } finally {
      一定会执行的代码
    }

scala中的异常结构和java中的大致相同,不同点就是scala中只能有一个catch,在这个catch中可以捕获多个异常。

案例

// 在scala中大异常和小异常的顺序可以不固定
try {
      val sub: Int = 2 / 0
    } catch {
      case ex: ArithmeticException => println("捕获到除零异常!!")
      case ex: Exception => println("捕获到异常!!")
    }
  }

说明:

  1. 在scala中只能有一个catch。
  2. 在catch中可以有多个case,每个case可以匹配一种异常。
  3. => 关键符号,表示后面是对该异常的处理代码。
  4. finally内是一定会被执行的代码。
  5. throw关键字,抛出一个异常对象。所有异常都是Throwable的子类。thorw表达式的类型是Nothing,Nothing是所有类的子类。

在这里插入图片描述
6. throws关键字,采用的是注解的方式声明异常。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值