Эквивалент Java to.NET система.Исключение InvalidOperationException


Я не так хорошо знаком с пакетами исключений Java, как с пакетами. NET. я нахожусь в ситуации, когда, если программирование на C#, я бы бросил System.InvalidOperationException.

перед созданием моего собственного java.lang.RuntimeException подкласс, мне нужно знать, есть ли подобный тип исключения, который я должен бросить в Java.

точный сценарий:

мой класс-это объект значения, который предоставляет int intValue() метод, возвращающий int. Однако, в некоторых ситуациях, текущее значение не может быть предоставлена как int, так что этот класс также предоставляет boolean isInteger() чтобы пользователи API знали, когда intValue() можно смело ссылаться.

если звонящий называет intValue(), когда isInteger() и false, исключение должно быть выдано.

и вопрос: какой тип исключения?

Я знаю, что этот вопрос может не иметь правильно ответ, но учитывая, что у меня нет большого опыта проектирования Java API, я хочу знать от других разработчиков Java, что они ожидал бы быть брошенным в этом сценарии.

спасибо

1 67

1 ответ:

бросить IllegalStateException:

сигналы о том, что метод был вызван в незаконное или неподходящее время. Другими словами, среда Java или Java-приложение не находится в соответствующее государство для запрошенного операция.