try, catch, finally 구조
- try 블록
예외가 발생할 가능성이 있는 코드를 포함. - catch 블록
try 블록에서 예외가 발생할 경우 그 예외를 처리하는 코드를 포함. - finally 블록
예외 발생 여부와 상관없이 try 블록 이후에 반드시 실행되는 코드를 포함.
try나 catch에서 return할 경우 finally 코드
finally 블록은 어떠한 경우에도 try나 catch의 코드를 수행한 후에 반드시 수행된다.
try에서 발생한 예외 중에 catch에서 잡지 않은 예외가 있는 경우
finally 블록을 실행한 후에 상위 호출자에게 예외를 전파한다.
catch에서 예외가 발생할 경우
finally 블록을 실행한 후에 상위 호출자에게 예외를 전파한다.
finally 코드가 수행되지 않는 경우
finally 코드가 수행되기 전에 System.exit()
등의 이유로 JVM이 강제로 종료되면 당연하게도 finally 코드를 수행하지 못합니다.
'스터디 > Java' 카테고리의 다른 글
[Java 자바] '...' 가변인자(Varargs) (1) | 2024.11.21 |
---|---|
[Java 자바] 체크 예외와 언체크 예외(Checked Exception, Unchecked Exception) (0) | 2024.11.14 |
[Java 자바] 정적 초기화 블록, 인스턴스 초기화 블록 (0) | 2024.09.20 |
[Java 자바] equals()와 hashCode() 메서드 (0) | 2024.09.10 |
[Java 자바] 제네릭(generic)이란? (0) | 2024.03.19 |