Java Kotlin检查异常替代方案

Java Kotlin检查异常替代方案,java,exception,try-catch,kotlin,Java,Exception,Try Catch,Kotlin,既然Kotlin不支持检查异常,那么如何让程序员意识到方法可能引发异常呢 简单的例子: class Calculator (value: Int = 0) { fun divide (dividend: BigDecimal, divider: BigDecimal) : BigDecimal { return dividend / divider } } 显然,divide方法可能抛出java.lang.arithmetricException:Divisi

既然Kotlin不支持检查异常,那么如何让程序员意识到方法可能引发异常呢

简单的例子:

class Calculator (value: Int = 0) {

    fun divide (dividend: BigDecimal, divider: BigDecimal) : BigDecimal {
        return dividend / divider
    }
}
显然,divide方法可能抛出
java.lang.arithmetricException:Division by zero
异常,库的创建者需要警告类的用户将调用放入
try-catch
子句中


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

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

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


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

您可以返回Try,以便客户端可以调用issucess或isFailure


还可以返回可为空的类型BigDecimal?这样客户机就会知道该值可能不存在(当除以零时,您可以返回null)。

算术异常不检查异常,因此即使在JAVA中,程序员也不会收到警告。你必须使用例如。IOException@Przemo真的吗?谢谢你提供的信息