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 클래스를 활용해보는 것도 좋을 것 같습니다.
근데 개인적으로 필요한 곳에 상수로 있는 것이 나는 보기 좋았어요!