• 회원가입
  • 로그인
  • 구글아이디로 로그인

[class] Java - Exceptions (= Try...Catch..) - 에러 제어 (= 익셉션 = 트라이...캐치... 구문) ※ 트라이캐치구문

1,371  
목차
  1. Exceptions (익셉션) 정의
  2. try...catch... 구문
  3. finally 구문
  4. throw 키워드

 

Exceptions (익셉션) 정의

 

에러는 (의도적, 잘못 입력, 예측 불가 등) 여러 요인으로 생기는데,

Java는 프로그램 실행 중 에러 발생 시 멈춘 후 에러 메세지를 생성.

즉, 정상적 실행의 예외적 경우 (= 오류)를 다루는 기술을 의미함.

 

 

try...catch... 구문

[구문]

 

try {

  //  테스트 할 실행 코드

}

catch(Exception e) {

  //  에러 발생 시 실행할 코드

}

 

PS. try...catch... 구문은 쌍으로 함께 사용.


[에러 발생 시, try...catch... 구문으로 처리 안 하는 경우]

: Java의 기본 에러메세지가 그대로 노출됨. 

 

[예제] Hz.java

public class Hz {

  public static void main(String[] args) {

    int[] nums = {1, 2, 3};

    System.out.println(nums[5]); // 에러 유발.

  }

}

 

결과값:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 3

at Hz.main(Hz.java:4) 


[에러 발생 시, try...catch... 구문으로 처리하는 경우]

: 에러 발생 시, 사용자 정의 에러 메세지 출력 가능.

 

[예제] Hz.java

public class Hz {

  public static void main(String[] args) {

    try {

      int[] nums = {1, 2, 3};

      System.out.println(nums[5]);

    } catch (Exception e) {

      System.out.println("뭔가 에러 발생.");

    }

  }

}

 

결과값: 뭔가 에러 발생.

 

finally 구문

 

try...catch...구문 결과와 무관하게 그 이후에 실행할 코드 정의.

 


[예제] Hz.java

 

public class Hz {

  public static void main(String[] args) {

    try {

      int[] nums = {1, 2, 3};

      System.out.println(nums[5]);

    } catch (Exception e) {

      System.out.println("뭔가 에러 발생.");

    } finally {

      System.out.println("'try...catch...' 구문 종료.");

    }

  }

}

 

 

throw 키워드

 

사용자 지정 오류 생성.

 


 

 



분류 제목
class Java - Iterator (반복자)
class Java - Wrapper Classes (랩퍼 클래스)
class Java - Exceptions (= Try...Catch..) - 에러 제어 (= 익셉션 = 트라이...캐…
class Java - RegEx (정규식) - 정규표현식
class Java - Threads (쓰레드)
class Java - Lambda (람다 표현식)
2/2
목록
찾아주셔서 감사합니다. Since 2012