사용자 정의 예외 클래스

CODEDRAGON Development/Java

반응형



 

사용자 정의 예외 클래스

·       사용자 정의 Exception 필요한 이유는 표준예외가 발생할 예외에 대한 정보를 변경하거나 정보를 수정하고자 경우 사용자가 직접 작성하여 보강된 예외를 발생시켜 원하는 결과를 얻을 있습니다.

·       사용자 정의 Exception 작성하기 위해서는 Throwable 받지 않고 하위에 있으면서 보다 많은 기능들로 확장되어 있는 Exception 클래스으로부터 상속을 받는 것이 유용합니다.

·       만약 /출력에 관련된 예외를 작성한다면 IOException으로부터 상속을 받는 것이 일반적입니다.

 

 

class UserException extends Exception {

public UserException() {

super("getMessage메소드 호출시 반환되는 문자열");

}

 

public UserException(String msg) {

super(msg);

}

}

 

public class ExceptionEx {

 

public void testFunction(String[] n) throws UserException {

System.out.println("testFunction");

 

if (n.length < 1)

throw new UserException("아무것도 입력되지 않았습니다."); // 강제 예외 발생

else {

throw new UserException11("강제 예외 발생"); // 강제 예외 발생

}

}

 

}

 

 

요즘에는 Exception 클래스가 아닌 예외 처리를 강제하지 않는 RuntimeException 클래스를 상속받아 작성하는 경우가 많습니다.

class MyException extends RuntimeException {

    MyException(String errmsg) {

        super(errmsg);

    }

}