finally블록에 대해 포스팅하는 것을 깜빡..;;


finally블록이란 예외처리시 예외의 발생여부와 관계없이 실행되어야 할 소스코드들을 적어주는 블록입니다.

try-catch문의 마지막에 선택적으로 붙여서 사용이 가능합니다.


예외가 발생한 경우 try -> catch -> finally 의 순서로 실행이되고, 예외가 발생하지 않았을 경우에는 try -> finally 의 순서로 실행됩니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
public class FinallyTest {
    public static void main(String[] args) {
        try{
              System.out.println("1");
               System.out.println(3/0);
               System.out.println("2");
        }catch(Exception e){
            System.out.println("3/0은 할 수 없습니다.");
        }finally{
            System.out.println("finallu{} 블록은 예외와 상관없이 실행되어야할 부분입니다.");
        }
    }
}
cs

위의 소스코드를 먼저 실행해보고 그 다음으로 8번라인을 주석처리하여 실행을 하여보면 실행순서를 알 수 있습니다.