Java/예외처리

예외 처리: 사용자 정의 예외

재성스 2023. 9. 14. 18:28
반응형

사용자 정의 예외(User-Defined Exception)

사용자 정의 예외란 Java에서 기본적으로 제공되는 예외 클래스를 상속받아 사용자가 직접 예외 클래스를 정의하는 것을 의미한다. 사용자 정의 예외는 기존의 예외 클래스를 확장하여 프로그래머가 특정 예외 상황을 더 명확하게 표현하고 예외 처리를 할 수 있게 한다.

아래는 RuntimeException 클래스를 상속받은 사용자 정의 예외 클래스를 작성한 예이다.

    public static void main(String[] args) {
       throw new customException("사용자 정의 예외 발생");
    }
}

class customException extends RuntimeException {   // 사용자 정의 예외 RuntimeException 상속
    public customException() {     //  기본 생성자
    }
    public customException(String message) {
        super(message);		// 상위 클래스 생성자 호출
    }

사용자 정의 클래스인 CustomException은 RuntimeException 클래스를 상속받았다. 이것은 사용자 정의 예외 클래스를 통해 기존 예외 클래스를 확장하여 사용할 수 있다는 것을 나타낸다. 

main 메서드에서 throw 키워드를 통해 사용자 정의 예외를 발생시키고 예외 메시지를 포함했다. 이 예외 메시지가 위 결과처럼 출력될 수 있는 것은, 기존의 예외 클래스에는 예외가 발생한 이유를 나타내는 메시지를 저장하고 이를 호출 코드로 전달할 수 있도록 설계되어 있기 때문이다.

따라서, 사용자 정의 클래스 생성자에서 상위 클래스 생성자(super(message) )를 호출하여 예외 메시지를 설정하여 반환하도록 하였다. 

반응형