Kotlin 异常处理

Kotlin 异常处理,异常是在程序运行时可能发生的不必要的问题,并突然终止您的程序。异常处理是一个过程,使用它可以防止程序出现可能破坏我们代码的异常。

有两种类型的异常:

  1. 受检的异常声明为方法签名的一部分,并在编译时检查,例如IOException
  2. 非受检的异常不需要作为方法的一部分添加签名,并在运行时检查它们,例如NullPointerException

注意:在 Kotlin 中,所有异常情况都非受检。

处理 Kotlin 中的异常与 Java相同。我们使用trycatchfinally块来处理 kotlin 代码中的异常。

Kotlin 异常处理示例

在下面的例子中,我们将一个数字除以 0(零),这应该抛出ArithmeticException。由于此代码在try块中,因此将执行相应的catch块。

在这种情况下,发生了ArithmeticException,因此执行了ArithmeticExceptioncatch块,并在输出中打印了"Arithmetic Exception"

当发生异常时,它会忽略该点之后的所有内容,并且控制流会立即跳转到catch块(如果有的话)。无论是否发生异常,始终执行finally块。

fun main(args: Array<String>) {
    try {

        var num = 10/0
        println("BeginnersBook.com")
        println(num)

    } catch (e: ArithmeticException) {
        println("Arithmetic Exception")
    } catch (e: Exception) {
        println(e)
    } finally {
        println("It will print in any case.")
    }
}

输出:

Kotlin 异常处理

如果我们不处理异常会怎么样

假设我们在上面的例子中没有处理异常,那么程序会突然终止。

这里我们没有处理异常,所以程序因错误而终止。

fun main(args: Array<String>) {

        var num = 10/0
        println("BeginnersBook.com")
        println(num)
}

输出:

Kotlin 不处理异常

如何在 Kotlin 中抛出异常

我们也可以使用throw关键字抛出异常。在下面的示例中,我们使用throw关键字抛出异常。异常执行前的语句已执行,但异常后的语句未执行,因为控制流已转移到catch块。

fun main(args: Array<String>) {
    try{
        println("Before exception")
        throw Exception("Something went wrong here")
        println("After exception")
    }
    catch(e: Exception){
        println(e)

    }
    finally{
        println("You can't ignore me")
    }
}

输出:

如何在 Kotlin 中抛出异常

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程