728x90
Kotlin에서 예외 처리하는 방법은 Java와 비슷하다. 예외 처리하는 방법에는 두 가지가 있다.
throw로 예외를 던지는 방식과, try, catch로 예외를 잡아서 처리하는 방식이다.
throw
예외를 던질 때 throw 키워드를 사용한다. 이 때 발생한 예외를 잡아주지 않으면 함수를 호출 스택을 거슬러 올라가 예외를 처리해주는 부분까지 다시 예외를 던진다.
- Java달리 Kotlin에서는 throw가 식으로 쓰여 다른 식에 포함될 수 있다.
fun main() {
var n = 10
if(n !in 0..5) {
throw IllegalArgumentException("A percentage value must be between 0 and 5: $percentage")
}
else println(n)
}
여기서 Java와 다른 점은 new를 사용하지 않고 예외 인스턴스를 생성하는 것이다.
try, catch, finally
try, catch는 발생한 예외를 직접 잡아 처리하고 싶을 때 사용한다.
방법은 Java와 동일하다. try{} 안에서 예외가 발생하면 catch에서 에러를 처리한다.
finally는 예외가 발생했든 말든 실행된다.
fun readNumber(reader: BufferReader): Int? {
try {
val line = reader.ReadLine()
return Integer.paseInt(line)
}
catch (e: NumberFormatException) {
return null;
}
finally {
reader.close()
}
}
이는 각 줄을 읽어 수로 변환하는데 올바른 수의 형태가 아니라면 null을 반환한다.
728x90
'Programming > Kotlin' 카테고리의 다른 글
코틀린(Kotlin) - 문자열과 정규식 (0) | 2021.09.25 |
---|---|
코틀린(Kotlin) - 함수 정의와 호출 (0) | 2021.09.25 |
코틀린(Kotlin) - enum, 제어문(if, when, while, for) (0) | 2021.09.19 |
코틀린(Kotlin) - 클래스(Class)와 프로퍼티(Property) (0) | 2021.09.17 |
코틀린(Kotlin) - 함수, 변수, 문자열템플릿 정리 (0) | 2021.09.12 |
댓글