예외처리문장(Exception handling)

박지혜·2025년 5월 4일

수업시간에 배우고 정말 애먹었던,,, try catch문
당시에 받아들인 내용으로는 try문에 애매한 문장을 넣고 만약 틀리면 예외처리 해버리고 catch로 받아라?? 이게 뭔소린지.. 싶었던 문법...
하지만 스프링을 하면서 너무 자주 보이는 문장이라서 한번 제대로 정리할 필요성을 느껴서 끄적여본다😊


프로그램 실행중 Exception

프로그램 사용중 예기치 못한 문제가 발생할 수 있다.

  • FileNotFoundException : 파일이 존재하지 않을때
  • IOException : 입출력시 문제발생
  • SQLException : 데이터베이스 연결시 문제발생

이런식으로 예기치 못한 문제가 발생하면 자바에서는 Exception 클래스를 제공하여 프로그램이 종료되지 않고 정상상태를 유지하도록 한다.



try-catch-finally문

try{
	예외 발생 가능성이 있는 코드
}catch(예외클래스명 변수명){
	//발생된 예외 처리 코드
    //보통 이곳에 에러메세지를 넣는다
}finally{
	예외 발생하더라도 무조건 실행시키는 문장
}

에러 발생시 : try -> catch -> finally
에러 발생 X : try -> finally

그럼 여기서 finally 구문이 왜 필요할까?

  • 에러가 발생되더라도, 발생되지 않더라도 꼭 출력되어야 하는 부분이 finally에 들어감
  • 예를 들어 catch문장에 return 구문이 들어가게 된다면(에러 발생시 에러메세지 출력 후 함수 종료) 그 아래 문장은 실행되지 않는다.
    하지만 finally를 넣어주면 finally 안에 들어가있는 문장은 실행된다.

0개의 댓글