[kotlin] 여러 예외를 던지거나 처리하는 방법
Kotlin은 Java와 마찬가지로 여러 예외를 처리하는 기능을 제공합니다. 이 기능을 사용하여 여러 예외 유형을 던지고 처리할 수 있습니다.
여러 예외 던지기
여러 예외를 한꺼번에 던지고 싶을 때는 throw
키워드와 함께 try
블록을 사용할 수 있습니다. 아래는 when
식을 사용하여 여러 예외를 던지는 예제입니다.
fun foo(i: Int) {
val result = try {
when (i) {
1 -> throw IllegalArgumentException("i is 1")
2 -> throw IllegalStateException("i is 2")
else -> "No exception"
}
} catch (e: Exception) {
"Caught exception $e"
}
println(result)
}
fun main() {
foo(1)
foo(2)
foo(3)
}
여러 예외 처리하기
여러 예외를 처리할 때는 catch
블록을 여러 개 사용하여 각 예외 유형에 대한 처리를 지정할 수 있습니다. 아래는 여러 예외를 처리하는 예제입니다.
fun bar(i: Int) {
try {
when (i) {
1 -> throw IllegalArgumentException("i is 1")
2 -> throw IllegalStateException("i is 2")
else -> println("No exception")
}
} catch (e: IllegalArgumentException) {
println("Caught IllegalArgumentException: $e")
} catch (e: IllegalStateException) {
println("Caught IllegalStateException: $e")
} catch (e: Exception) {
println("Caught exception: $e")
}
}
fun main() {
bar(1)
bar(2)
bar(3)
}
이렇게 하면 각 catch
블록에서 각각의 예외 유형에 대한 처리를 구체적으로 지정할 수 있습니다.
더 자세한 내용은 Kotlin 공식 문서를 참조하세요.
이렇듯 Kotlin에서는 간편하게 여러 예외를 처리할 수 있습니다.