참고: http://inpiringblog.blogspot.com/2015/07/try-catch-finally.html


try {

// 프로그램 실행 로직


} catch(Exception e) {

// 예외발생 시의 로직


} finally {

/* 

1. 기본 실행 순서:

try문에서 예외가 발생하지 않았으면 catch문은 생략되어 try문이 실행된 이후에 finally문이 실행되고, 

try문에서 예외가 발생했으면 try문, catch문 순서로 실행된 이후에 finally문이 실행된다.

try문이나 catch문 안에 return문 또는 throw문이 있다면, 그 return문 또는 throw문 전까지 로직이 실행된 후 finally문이 실행되고 나서 그 return문 또는 throw문이 실행된다(결론적으로 finally문은 무조건 실행된다).


2. catch문과 finally문 안에 throw문이 있는 경우:

try문에서 예외가 발생했으면, finally문 안에 있는 throw문이 먼저 실행되기 때문에 catch문 안에 있는 throw문은 실행되지 않는다.

*/




}

'IT > Java' 카테고리의 다른 글

Wrapper class 개념  (0) 2018.11.10
== vs equals() 개념  (0) 2018.11.04
e.printStackTrace()  (0) 2018.07.18
@builder 관련 내용  (0) 2018.03.08
String to char[]  (0) 2018.02.24

+ Recent posts