Как и все остальные, создайте экземпляр объекта перед его выбросом.
Просто хотел добавить один бит; невероятно редко бросать исключение RuntimeException. Было бы нормально, если бы код в API мог вызывать подкласс этого, но, как правило, код приложения генерирует исключение или что-то, что расширяет Exception, но не RuntimeException.
И в ретроспективе я пропустил добавление причины , почему вы используете исключение вместо RuntimeException; @Jay, в комментарии ниже, добавлен в полезный бит. RuntimeException не является проверенным исключением;
- Подпись метода не обязана объявлять, что может быть выбрано исключение RuntimeException.
- Абоненты этого метода не обязаны улавливать исключение или признавать его каким-либо образом.
- Разработчики, которые пытаются использовать ваш код, не будут предвидеть эту проблему, если они не будут выглядеть внимательно, и это увеличит нагрузку на обслуживание кода.
Зачем вам нужно исключать RuntimeException? –
@JonathonFaust - Потому что иногда вы не хотите самостоятельно обрабатывать исключение или не хотите заставить пользователя обрабатывать исключение. Но если никто не справится с этим, приложение должно потерпеть крах. В Python почти каждое исключение - исключение во время выполнения, и все его любят. Если вы знаете, как следует обрабатывать исключение, вы обрабатываете его, а если нет, то вы игнорируете его - либо кто-то из вас может справиться, либо вы потерпите крах, и любой сценарий в порядке. Единственное, что было бы нехорошо, это записывать его и игнорировать. – ArtOfWarfare
Не бросайте исключение во время выполнения или создайте подкласс RuntimeException просто потому, что вы не хотите беспокоиться о том, чтобы указать исключения, которые могут использовать ваши методы. http://journals.ecs.soton.ac.uk/java/tutorial/java/exceptions/runtime.html –