@Throws註解在Kotlin中


Kotlin中的異常概念與其在Java中的非常相似。Kotlin中的所有異常都是Throwable類的後代。@Throws註解表示當編譯為JVM方法時,函式應該宣告哪些異常。

示例 - 使用方法丟擲異常

此示例中,我們將建立一個場景,其中我們將生成邏輯算術異常,但我們將嘗試使用@throws註解和函式呼叫丟擲不同的異常。

import java.io.*
import kotlin.jvm.Throws

fun main(args: Array<String>) {
   val item=0
   var result=0
   try {
      result=item/0 // Division by Zero Exception
   } catch (ex: Exception) {

      // Although it is Arithmetic exception,
      // we will throw IOException using function call
      ex().throwJavaChecked()
   }
}
class ex{
   @Throws(IOException::class)
   fun throwJavaChecked() {
      throw IOException()
   }
}

輸出

執行後,它將生成以下異常 −

Exception in thread "main" java.io.IOException
   at ex.throwJavaChecked(main.kt:20)
   at MainKt.main(main.kt:13)

更新於: 2022-3-16

2K+ 次瀏覽

開啟 職業生涯

完成課程,獲得認證

開始
廣告
© . All rights reserved.