1. 程式人生 > 其它 >scala之異常處理

scala之異常處理

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關鍵字,採用的是註解的方式宣告異常。
在這裡插入圖片描述