2017-10-13 81 views
4

由于科特林不支持checked异常那么如何让程序员知道,一个方法可能引发的异常科特林checked异常替代

简单的例子:

class Calculator (value: Int = 0) { 

    fun divide (dividend: BigDecimal, divider: BigDecimal) : BigDecimal { 
     return dividend/divider 
    } 
} 

显然鸿沟方法可能会抛出异常java.lang.ArithmeticException: Division by zero并且图书馆的创建者需要警告该课程的用户将该调用置于try-catch子句中

Kotlin中的知晓机制是什么?

回答

3

鉴于该语言没有一个构造来明确这一点,唯一剩下的就是:隐式地。

例如,通过放入javadoc,它清楚地告诉用户该方法可以抛出什么/为什么会抛出异常。或者您使用@Throws注释。

也许,也许科特林队会在某个时候加编译器警告弥补了这一点(见here)。