fun method1() { try { 예외가 발생할 가능성이 존재하는 코드 } catch(예외종류) { 예외가 발생했을때 처리할 코드 } }
- 예외가 발생하면, try로 가지 말고 catch를 실행한다.
fun method1(num1:Int) { if(num1 > 10) { throw 예외종류 } }
- 예외가 발생하면 throw하여 프로그램이 종료되지 않도록 한다.
while(true) { try { var num1 = readLine()!!.toInt() println("내가 입력한 숫자는 ${num1}입니다") break } catch(e:java.lang.NumberFormatException) { println("숫자를 입력하세요") } }
- 숫자를 입력하지 않으면 catch로 가서 프린트문을 실행하고, 다시 try로 가서 입력된 숫자가 숫자일 때까지 반복한다. 숫자가 입력되면 break되어 while문(무한반복 상태)이 종료된다.
while(true) { try { var num1 = readLine()!!.toInt() println("내가 입력한 숫자는 ${num1}입니다") break } catch(e:java.lang.NumberFormatException) { println("숫자를 입력하세요") } finally { println("키보드와의 연결은 정상적입니다") } }
- finally는 try, catch와 상관없이 항상 실행된다.
- 예외가 발생했든 안했든 무조건 마지막에는 finally로 가서 키보드와의 연결이 정상이라는 메세지를 출력하게 된다.
[TIL-240311]