상세 컨텐츠

본문 제목

addStringPOJO(3) - 예외 처리 방식 변경

백엔드 공부진행도/연습 코드

by myeongjaechoi 2025. 1. 5. 11:37

본문

throw new CustomSeparatorNoNewLineException("Custom Separator는 개행문자인 \\n이 필요합니다.");

나는 기존에 예외처리를 이렇게 처리했었다...  분명 프로젝트 할 땐 이렇게  안 했는데 왜 자바로 작성하려고 하다보니 이런 걸 놓쳤지? 싶다..

package exception;

public enum CustomError {
    CUSTOM_SEPARATOR_EMPTY_EXCEPTION("Custom Separator는 null일 수 없습니다."),
    CUSTOM_SEPARATOR_NO_NEW_LINE_EXCEPTION("Custom Separator는 개행문자 \\n이 필요합니다."),
    CUSTOM_SEPARATOR_NUMBER_EXCEPTION("Custom Separator는 숫자로 지정할 수 없습니다."),
    INPUT_STRING_BLANK_EXCEPTION("공백 문자는 포함될 수 없습니다.");


    CustomError(String msg) {
        this.msg=msg;
    }



    private final String msg;
    public String getMsg(){
        return this.msg;
    }

}
package exception;

public class GlobalException extends IllegalArgumentException{

    public GlobalException(CustomError customError){
        super(customError.getMsg());

    }

}

 

throw new GlobalException(CustomError.CUSTOM_SEPARATOR_NO_NEW_LINE_EXCEPTION);

그래서 바로 이런식으로 고쳤다!

하지만 아직도 "모든 클래스에 작성되어 있는 정적 메소드를 보면서, 불필요한 것들을 지우는 것이 좋아보입니다." 이 말에 의미를 깨닫진 못했다.. 더 고민해보고 공부해야 될 것 같다.

관련글 더보기