Junior
Comment gérer les exceptions en Kotlin?
sobes.tech IA
Réponse de l'IA
En Kotlin, les blocs try, catch et finally sont utilisés pour gérer les exceptions.
fun divide(a: Int, b: Int): Int {
try {
// Code potentiellement dangereux
return a / b
} catch (e: ArithmeticException) {
// Gestion d'une exception spécifique
println("Erreur : division par zéro !")
return 0
} catch (e: Exception) {
// Gestion des exceptions générales
println("Une erreur inconnue est survenue : ${e.message}")
throw e // Relancer l'exception si nécessaire
} finally {
// Code qui s'exécute dans tous les cas (indépendamment de l'exception)
println("Nettoyage des ressources ou autres actions finales")
}
}
- Le bloc
trycontient le code qui peut lancer une exception. - Le bloc
catchest utilisé pour intercepter et gérer les exceptions. Plusieurs blocscatchpeuvent être utilisés pour différents types d'exceptions. Les types d'exceptions sont capturés dans l'ordre de leur déclaration. - Le bloc
finallycontient du code qui s'exécute toujours, que l'exception ait été levée ou non. Ce bloc est souvent utilisé pour libérer des ressources.
Contrairement à Java, Kotlin ne possède pas d'exceptions obligatoires à gérer ("checked"). Toutes les exceptions en Kotlin sont "unchecked".
Pour lancer des exceptions, on utilise le mot-clé throw :
fun validateAge(age: Int) {
if (age < 0) {
throw IllegalArgumentException("L'âge ne peut pas être négatif")
}
// ...
}
Il est également possible d'utiliser des classes d'exceptions standard de la bibliothèque ou d'en créer de propres, en héritant de Exception ou RuntimeException.