☕ 자바 JAVA/☕ 클래스와 함수 Class & Method

[JAVA]예외처리:throw & throws, try-catch.

뉴이 NUEY 2024. 9. 25. 00:33
반응형

 

throw
: 강제 예외처리

개발자가 적은 throw로 Exception을 발생 시키면 예외를 처리하는 catch 블록으로 넘어갑니다.


throws
: 예외를 throws 옆에 적은 class로 넘깁니다.


try/catch문을 이용해 예외처리

예외가 발생해도 이를 처리하면 프로그램이 끝까지 정상실행됩니다.
출력결과


예외의 흐름

출력결과

  1. main()에서 method1을 호출 하고, method1이 method2를 호출합니다.
    main → 1() → 2()
  2. method2에서 강제로 예외를 발생시키면 try-catch문으로 예외를 처리하지 않았기 때문에,
    → method2를 호출한 method1에게 예외를 떠넘깁니다.
  3. method1에서도 예외를 처리하지 않았기 때문에
      main으로 예외를 떠넘깁니다.
  4. main 또한 예외를 처리하지 않기 때문에
    jvm에 예외를 떠넘겨 결국 프로그램은 비정상 종료합니다.
※ 결론
throws는 결국 예외를 어디에서 처리할 지를 정하는 곳이지 예외를 처리하진 못합니다.
예외가 발생했을 때, 처리는 try-catch문으로 해야만 합니다.

어떤 예외를 처리해야 하는 지는 아래 포스트 참고해주세요.

2024.11.03 - [☕ 자바 JAVA/☕ 개념지식] - [JAVA]Error & Exception. 예외의 종류.


오류처리방식은 클린코드 카테고리의 관련글들을 추천합니다.

 

반응형