Обработка RuntimeExceptions в Java [закрыто]
может ли кто-нибудь объяснить, как обрабатывать исключения времени выполнения в Java?
4 ответов
Он не отличается от обработки обычного исключения:
try {
someMethodThatThrowsRuntimeException();
} catch (RuntimeException ex) {
// do something with the runtime exception
}
Если вы знаете тип исключения, которое может быть вызвано, вы можете поймать его явно. Вы также можете поймать Exception
, но это обычно считается очень плохой практикой, потому что тогда вы будете относиться к исключениям всех типов одинаково.
обычно точка RuntimeException заключается в том, что вы не можете обрабатывать его изящно, и они не должны быть брошены во время нормального выполнения вашей программы.
вы просто ловите их, как и любое другое исключение.
try {
somethingThrowingARuntimeException()
}
catch (RuntimeException re) {
// Do something with it. At least log it.
}
не уверен, что вы имеете в виду непосредственно RuntimeException
на Java, поэтому я предполагаю, что вы говорите об исключениях во время выполнения.
основная идея обработки исключений в Java заключается в том, что вы инкапсулировать код, который вы ожидаете, может вызвать исключение в специальном заявлении, как показано ниже.
try {
// Do something here
}
затем вы обрабатываете исключение.
catch (Exception e) {
// Do something to gracefully fail
}
Если вам нужны определенные вещи для выполнения независимо от того, вызвано ли исключение, добавьте finally
.
finally {
// Clean up operation
}
все вместе это выглядит так.
try {
// Do something here
}
catch (AnotherException ex) {
}
catch (Exception e) { //Exception class should be at the end of catch hierarchy.
}
finally {
}