Kotlin finally塊
Kotlin finally
是這樣的塊:無論是否處理異常,它總是執行。 所以它用於執行重要的代碼語句。
Kotlin finally塊示例1
下面我們看一個異常處理的例子,但這個示例中不會發生異常。
fun main (args: Array<String>){
try {
val data = 10 / 5
println(data)
} catch (e: NullPointerException) {
println(e)
} finally {
println("finally block always executes")
}
println("below codes...")
}
執行上面示例代碼,得到以下結果 -
2
finally block always executes
below codes...
Kotlin finally塊示例2
下面來看一個異常處理的例子,此示例代碼將會發生異常但沒有處理。
fun main (args: Array<String>){
try {
val data = 5 / 0
println(data)
} catch (e: NullPointerException) {
println(e)
} finally {
println("finally block always executes")
}
println("below codes...")
}
執行上面示例代碼,得到以下結果 -
finally block always executes
Exception in thread "main" java.lang.ArithmeticException: / by zero
Kotlin finally塊示例3
下面來看一個異常處理的例子,此示例代碼將會發生並處理異常。
fun main (args: Array<String>){
try {
val data = 5 / 0
println(data)
} catch (e: ArithmeticException) {
println(e)
} finally {
println("finally block always executes")
}
println("below codes...")
}
執行上面示例代碼,得到以下結果 -
java.lang.ArithmeticException: / by zero
finally block always executes
below codes...
注意:如果程序退出(通過調用
exitProcess(Int)
或導致進程中止的任何錯誤),將不執行finally
塊。