Kotlin检查了例外情况

Joc*_*Doe 14 java exception try-catch kotlin

由于Kotlin不支持检查异常,因此如何让程序员意识到方法可能会抛出异常

简单的例子:

class Calculator (value: Int = 0) {

    fun divide (dividend: BigDecimal, divider: BigDecimal) : BigDecimal {
        return dividend / divider
    }
}
Run Code Online (Sandbox Code Playgroud)

显然,divide方法可能抛出java.lang.ArithmeticException: Division by zero异常,并且库的创建者需要警告类的用户将调用放在try-catch子句中

在Kotlin,这种意识的机制是什么?

Gho*_*ica 6

鉴于该语言没有使之明确的结构,剩下的唯一内容是:隐式。

例如,通过放置javadoc可以清楚地告诉该方法用户什么/为什么可能向他抛出异常。或者您使用@Throws批注。

也许,kotlin团队可能会在某个时候添加编译器警告来弥补这一点(请参阅此处)。