Так что это касается вопроса о собеседовании, о котором я недавно спросил. Интервьюер начал с этого, спросив меня, как мы создаем наши пользовательские Исключения. Отвечая на это, он спросил меня, как я создаю RunTimeExceptions. Я сказал, что мы создадим их так же, как мы создадим проверенные Исключения. Просто наше пользовательское исключение будет распространяться на класс RunTimeException. Затем он спросил, в каких сценариях вы создадите собственное исключение RunTimeException. Теперь я не мог придумать хороший ответ на этот вопрос. Ни в одном из моих проектов мы не создали пользовательские RunTimeExceptions.Пользовательские исключения RunTime
Я также считаю, что мы никогда не должны создавать RunTimeExceptions. JVM может терпеть неудачу только конечным числом способов, и она хорошо их обрабатывает. При написании приложения мы не можем предсказать, какие исключения выполнения могут возникать, и поэтому нам не нужно их обрабатывать. И если мы можем предсказать эти условия, тогда они не являются RunTimeExceptions. Поскольку нам не нужны новые исключения во время выполнения, а также необходимость обработки исключений runtime, почему нам когда-либо понадобится создать пользовательское исключение RunTimeException. Все, что мы можем предугадать как возможное условие отказа, должно быть обработано во время компиляции, и это будет проверенное исключение. Правильно? Только те вещи, которые не могут быть обработаны во время компиляции, и те, которые зависят от времени выполнения, входят в категорию RunTimeExceptions.
Даже если мы пишем пользовательские RunTimeExceptions, а затем настраиваемый метод, который должен вызывать это RunTimeException, - как мы убеждаемся, что метод будет вызывать это конкретное исключение RunTimeException. Как мы это делаем. Мне это кажется невозможным.
Я пропустил что-то/много вещей здесь? Прошу совета.
Thanks, Chan.
Современные методы программирования рекомендуют использовать ** непроверенные ** исключения.Вы можете прочитать, почему, в хорошей статье [здесь] (http://johnpwood.net/2008/04/21/java-checked-exceptions-vs-runtime-exceptions/). – agad