try-catch, finally문

song yuheon·2023년 8월 27일
0

Java

목록 보기
23/46
post-thumbnail

예외처리 동작 흐름:

public static void main(String[] args) {
    OurClass ourClass = new OurClass();
    try{
        ourClass.thisMethodIsDangerous();
    }catch (OurBadException e){
        System.out.println(e.getMessage());
    }finally {
        System.out.println("예외 handling 완료");
    }
}
  1. OurClass 객체 생성.
  2. thisMethodIsDangerous 메서드 호출 시도.
  3. OurBadException 예외 발생 시 해당 예외를 catch 블록에서 처리.
    • OurBadExceptiongetMessage 메서드 호출로 예외 메시지 출력.
  4. finally 블록 실행: "예외 handling 완료" 출력.
  5. 위의 과정은 코드에서 두 번 수행됨.

OurBadException 예외 클래스 동작:

public OurBadException(){
    super("위험한 행동 예외 처리");
}
  1. OurBadException 생성자 호출 시 부모 클래스인 Exception의 생성자에 "위험한 행동 예외 처리" 문자열 전달.
  2. OurBadException 객체 메모리에 할당.
  3. throw 키워드로 OurBadException 객체 던짐.
  4. 던져진 예외는 가장 가까운 catch 블록에서 처리하거나, 처리되지 않을 경우 상위 호출 스택으로 전파됨.

profile
backend_Devloper

0개의 댓글