사용자 정의 예외 처리
자바 사용자는 새로운 예외를 정의하여 사용할 수 있습니다.
새로운 예외는 Exception 클래스로부터 상속되어 생성되어야 합니다.
class UserException1 extends Exception { // 사용자 정의 예외는 Exception 클래스로부터 상속
public UserException1(String message) { // 생성자 메소드
super(message);
// 상위 클래스인 Exception 클래스의 생성자를 호출하여 예외 객체 생성함
}
}
사용자 정의 예외 처리를 위한 실습 프로그램은 다음과 같습니다.
자바 프로그램을 작성한 후 실행시 아큐먼트를 입력 받기위해서 실행의 팝업버튼을 클릭하여 Run Configuration 명령을 선택한 후 Arguments 탭을 클릭하여 입력값을 입력해 줍니다.
Arguments 입력값으로 "12" 를 입력해주고 Run 버튼으로 실행시킵니다.
try 문은 입력값 "12" 를 정수로 변환하여 if 문을 실행합니다.
if 조건식인 3으로 나눈 나머지가 0 과 같으므로 throw new UserException1("사용자 정의 예외 1"); 문장이 실행됩니다. 그러므로, catch(UserException1 e) 문으로 점프하여 예외 처리를 수행합니다.
Arguments 입력값으로 "22" 를 입력해주고 Run 버튼으로 실행시켜 봅니다.
실행을 하면 if 문에서 3으로 나누어 나머지가 0이 아니므로 throw new UserException2("사용자 정의 예외 2"); 문장이 실행됩니다. 그러므로, catch(UserException2 e) 문으로 점프하여 예외 처리를 수행합니다.
Arguments 입력값으로 "A" 를 입력해주고 Run 버튼으로 실행시켜 봅니다.
실행을 하면 입력값이 숫자가 아니므로 if 문의 조건식 비교가 안되어 바로 예외 처리 문장으로 점프하여 catch(Exception e) 가 실행됩니다.
'자바' 카테고리의 다른 글
자바 스레드의 생성과 사용 (0) | 2021.12.23 |
---|---|
java.lang.Thread 클래스 (0) | 2021.12.22 |
Try with Resource 문 (0) | 2021.12.19 |
예외의 인위적 발생(throw 절 사용) (0) | 2021.12.18 |
자바 예외 처리 방법(try, catch, finally 블록 사용) (0) | 2021.12.17 |
댓글