package racingcar.common.exception;

import racingcar.common.constant.MessageConstants;

public class InvalidCarNameException extends IllegalArgumentException {
    public InvalidCarNameException() {
        super(MessageConstants.INVALID_CAR_NAME_ERROR);
    }
}

적용을 아래와 같이 할 수 있다고 한다.

public void validateCarName(String carName) {
    if (carName == null || carName.length() < 1 || carName.length() > 10) {
        throw new InvalidCarNameException(); // 유효하지 않은 자동차 이름일 경우 예외 발생
    }
    // 추가적인 유효성 검사 로직...
}

그리고 super를 통해서 상위 개체에 에러 메시지를 전달한다고 한다. 굳이 써야할까 싶어요

enum 클래스도 인터페이스를 implement하는 것이 가능하기 때문에 에러 메시지에 관해서는 enum 클래스를 활용해보는 것도 좋을 것 같습니다.

근데 개인적으로 필요한 곳에 상수로 있는 것이 나는 보기 좋았어요!