Kotlin finally
是这样的块:无论是否处理异常,它总是执行。 所以它用于执行重要的代码语句。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/18273.html
Kotlin finally块示例1文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/18273.html
下面我们看一个异常处理的例子,但这个示例中不会发生异常。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/18273.html
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...")
}
执行上面示例代码,得到以下结果 -文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/18273.html
2
finally block always executes
below codes...
Kotlin finally块示例2文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/18273.html
下面来看一个异常处理的例子,此示例代码将会发生异常但没有处理。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/18273.html
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...")
}
执行上面示例代码,得到以下结果 -文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/18273.html
finally block always executes
Exception in thread "main" java.lang.ArithmeticException: / by zero
Kotlin finally块示例3文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/18273.html
下面来看一个异常处理的例子,此示例代码将会发生并处理异常。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/18273.html
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...")
}
执行上面示例代码,得到以下结果 -文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/18273.html
java.lang.ArithmeticException: / by zero
finally block always executes
below codes...
注意:如果程序退出(通过调用
exitProcess(Int)
或导致进程中止的任何错误),将不执行finally
块。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/18273.html
//原文出自【易百教程】,商业转载请联系作者获得授权,非商业转载请保留原文链接:https://www.yiibai.com/kotlin/kotlin-finally-block.html#article-start文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/18273.html