2017-10-13 3 views
4

Da Kotlin unterstützt nicht überprüft Ausnahmen dann, wie ein Programmierer bewusst zu machen, dass ein VerfahrenKotlin geprüfte Ausnahmen alternative

Ausnahme auslösen kann

Einfaches Beispiel:

class Calculator (value: Int = 0) { 

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

Offensichtlich ist die Kluft Methode java.lang.ArithmeticException: Division by zero Ausnahme auslösen kann und der Ersteller der Bibliothek muss den Benutzer der Klasse warnen, um den Aufruf in eine try-catch Klausel

zu warnen. Was ist der Mechanismus für dieses Bewusstsein in Kotlin?

Antwort

3

Angesichts der Tatsache, dass die Sprache kein Konstrukt hat, um dies explizit zu machen, bleibt nur übrig: implizit.

Zum Beispiel durch das Setzen von Javadoc, das dem Benutzer eindeutig die Methode mitteilt, was/warum Ausnahmen auf ihn geworfen werden könnten. Oder Sie verwenden die @Throws Annotation.

Vielleicht wird das Kotlin-Team vielleicht Compiler-Warnungen an einem Punkt hinzufügen, um dies auszugleichen (siehe here).

Verwandte Themen