자바 개발자를 위한 코틀린 입문 - 7. 코틀린에서 예외를 다루는 방법


자바 개발자를 위한 코틀린 입문 에 강의 내용을 정리한 내용이다.
코틀린에서 예외를 다루는 방법에 대해서 설명한다.

try cahtch finally 구문

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
fun parseIntOrThrow(str: String): Int {
try {
return str.toInt()
} catch (e: NumberFormatException) {
throw IllegalArgumentException("주어진 ${str}은 숫자가 아닙니다")
}
}

// null 코드를 반환할 경우
fun parseIntOrThrow2(str: String): Int? {
return try {
str.toInt()
} catch (e: NumberFormatException) {
null
}
}

Checked Exception과 Unchecked Exception

Kotlin에서는 Checked Exception과 Unchecked Exception을 구분하지 않는다.
모두 Unchecked Excpetion 이다.

1
2
3
4
5
6
7
fun readFile() {
val currentFile = File(".")
val file = File(currentFile.absolutePath + "/a.txt")
val reader = BufferedReader(FileReader(file))
println(reader.readLine())
reader.close()
}

try with resources

java에서 try with resource가 kotlin에서는 use를 사용한다.

1
2
3
4
5
fun readFile(path: String) {
BufferedReader(FileReader(path)).use {reader ->
println(reader.readLine())
}
}

소스코드

참조