Kotlin finally块阻塞了这样一个块, 无论是否处理异常, 该块始终执行。因此它用于执行重要的代码语句。
Kotlin最终阻止了示例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...
评论前必须登录!
注册