Kotlin 기본 문법 - 예외처리

2024. 6. 10. 10:10Kotlin 기본 문법 정리

# 예외처리의 개념

- 프로그램을 실행하기 전에 알 수 있는 컴파일 에러 = 오류

- 프로그램을 실행하는 도중에 발생하는 런타임 에러 = 예외

- 실행 도중에 예외가 발생하면 프로그램이 비정상적으로 종료됨

- 코틀린은 try-catch와 throw로 예외를 처리함

 

# try-catch

: 예외가 발생할 가능성이 존재하는 코드에 대해 어떻게 처리할지에 대해 사전에 처리

fun method1() {
		try {
			예외가 발생할 가능성이 존재하는 코드
		} catch(예외종류) {
			예외가 발생했을때 처리할 코드
		}
}

 

# throw

: 예외가 발생하는 경우에 그 예외를 무시하고 코드를 진행 

fun method1(num1:Int) {
		if(num1 > 10) {
			throw 예외종류
		}
}

 

# 예외처리의 필요성

- 미리 예외를 생각하고 소스코드를 작성해야 안정성을 높일 수 있음

 

# 예외처리 상황  - 숫자를 입력해야 하는데 문자열이 입력된 경우

(1) 오류 발생

NumberFormatException 오류가 발생

(2-1) try-catch 활용 예외 처리

- 숫자를 입력할 때까지 반복문을 무한으로 실행

- 예외가 발생하는 상황에 대해 catch 구문으로 전환 처리, 반복문으로 다시 재진행

while(true) {
        try {
            var num1 = readLine()!!.toInt()
            println("내가 입력한 숫자는 ${num1}입니다")
            break
        } catch(e:java.lang.NumberFormatException) {
            println("숫자를 입력하세요")
        }
    }

 

(2-2) try-catch-finally 활용 예외 처리

- 예외 처리와 관계없이 항상 실행하는 코드를 finally에 작성

- 자원 낭비를 방지

while(true) {
        try {
            var num1 = readLine()!!.toInt()
            println("내가 입력한 숫자는 ${num1}입니다")
            break
        } catch(e:java.lang.NumberFormatException) {
            println("숫자를 입력하세요")
        } finally {
            println("키보드와의 연결은 정상적입니다")
        }
    }

 

'Kotlin 기본 문법 정리' 카테고리의 다른 글

Kotlin 기본 문법 - 널 세이프티  (0) 2024.06.10
Kotlin 기본 문법 - 지연 초기화  (0) 2024.06.10
Kotlin 기본 문법 - 접근제한자  (0) 2024.06.10
#2. 변수  (1) 2024.06.07
1. 코딩 준비하기  (0) 2024.06.07