Я не так хорошо знаком с пакетами исключений Java, как и с .NET. Я в ситуации, когда, программируя в С#, я бы выбрал System.InvalidOperationException
.
Перед созданием моего собственного подкласса java.lang.RuntimeException
мне нужно знать, есть ли подобный тип исключения, который я должен использовать в Java.
Точный сценарий:
Мой класс - это объект значения, который предоставляет метод int intValue()
, возвращающий int. Однако в некоторых ситуациях текущее значение не может быть представлено как int, поэтому этот класс также предоставляет boolean isInteger()
, чтобы пользователи API могли знать, когда можно безопасно вызвать intValue()
.
Если вызывающий абонент вызывает intValue()
, когда isInteger()
равен false
, следует вызвать исключение.
И вопрос: какой тип исключения?
Я знаю, что этот вопрос может не иметь правильного ответа, но, учитывая, что у меня нет большого опыта разработки Java-API, я хочу узнать от других разработчиков Java, что они ожидали бы в этом сценарии.
спасибо