Java : 예외 발생과 Try-catch, finally문

커비·5일 전
0

Java

목록 보기
51/55

예외처리의 흐름 미리보기

  1. 예외를 어떻게 정의하고
  2. 예외가 발생할 수 있음을 알리고
  3. 사용자는 예외가 발생할 수 있음을 알고 예외를 핸들링하는지

throws / throw

throws

  • 메서드 이름 뒤에 붙어 이 메서드가 어떠한 예외사항을 던질 수 있는지 알려주는 예약어
  • 여러 종류의 예외사항을 적을 수 있음

throw

  • 메서드 안에서 실제로 예외 객체를 던질 때 사용하는 예약어
  • 실제로 던지는 예외 객체 하나와 같이 써야함
  • 일반 메서드의 return 키워드처럼 throw 아래의 구문들은 실행되지 않고 throw문과 함께 메서드가 종료됨
  • 메서드를 선언할 때 이 메서드가 위험하다는 것을 미리 예측해야함
  • 예측되었다면 throw 키워드와 함께 . 이메서드가 위험하다고 알려야 함

위험한 메서드를 사용한다면 예외를 핸들링(handling)하기

  • Try-catch, finally 기본 구조
try{

        }catch (){

        }finally {
            
        }
public static void main(String[] args) {
        OurClass ourClass = new OurClass();

        // try ~ catch ~ finaily 구문
        // try : 시도하다
        // catch : 잡다(붙잡다)
        // finally : 마침내

        // 일단 try ~~ 그리고 예외가 발생하면 그걸 잡아! catch
        // 그리고 정상적으로 수행되든 예외가 발생하든 결국 마침내 수행되어야 하는 로직을 'finally' 수행해!

        try{
            // 일단 실행
            ourClass.thisMethidIsDangerous();
        }catch (OurBadException e){
            System.out.println(e.getMessage());
        }finally {
            // 무조건 여기는 거친다
            System.out.println("우리는 방금 예외를 핸들링 했다. 정상처리든 예외 발생이든 여기를 거친다");
        }


    }
profile
전공은 컴퓨터공학, 복수전공은 해킹보안학, 직장은 방학(파워 구직중)

0개의 댓글