Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java中运行时异常的处理_Java_Exception Handling_Runtimeexception - Fatal编程技术网

Java中运行时异常的处理

Java中运行时异常的处理,java,exception-handling,runtimeexception,Java,Exception Handling,Runtimeexception,有人能解释一下如何在Java中处理运行时异常吗?它与处理常规异常没有区别: try { someMethodThatThrowsRuntimeException(); } catch (RuntimeException ex) { // do something with the runtime exception } 如果知道可能引发的异常类型,则可以显式捕获它。您还可以捕获异常,但这通常被认为是非常糟糕的做法,因为您将以相同的方式处理所有类型的异常 一般来说,RuntimeEx

有人能解释一下如何在Java中处理运行时异常吗?

它与处理常规异常没有区别:

try {
   someMethodThatThrowsRuntimeException();
} catch (RuntimeException ex) {
   // do something with the runtime exception
}

如果知道可能引发的异常类型,则可以显式捕获它。您还可以捕获异常,但这通常被认为是非常糟糕的做法,因为您将以相同的方式处理所有类型的异常


一般来说,RuntimeException的要点是您无法优雅地处理它,并且不希望在程序正常执行期间抛出它们。

您只需捕获它们,就像任何其他异常一样

try {
   somethingThrowingARuntimeException()
}
catch (RuntimeException re) {
  // Do something with it. At least log it.
}

不确定您是否直接引用Java中的
RuntimeException
,因此我假设您正在谈论运行时异常

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 {
}

我认为SO的非接受方现在已经明白,这些都是空洞的威胁。我们想要mod积分!我从来没有在任何地方看到过“接受”按钮?它是答案旁边的一个大勾号/更正标记。这很悲哀,但我的印象是,对于愚蠢的问题,明显的30秒答案通常比对于更有趣的问题,写得好的答案给予更多的奖励分数。对于浏览率高的问题,第一个答案通常会得到很多奖励分数,即使它与问题根本不相关。对不起,我找不到任何地方。我可以捕获运行时异常吗?当然!
Throwable
的所有子类都可以捕获。我看不出这个问题有任何问题-我有一个Runnable,我怀疑它导致了运行时错误,我不知道您可以将任何代码包装在try/catch中并添加RunTimeException捕获。我在谷歌上搜索了“Android处理运行时异常”,这是第一个出现的问题&这个答案提供了我所需要的。当然这正是该如何工作的?我们能捕获运行时异常吗?这怎么可能?在不知道运行时异常的情况下,我们如何通过编程捕获它?您可以使用
catch(ExceptionType name){}
捕获任何类型的异常。否则,您可以使用
catch{}
捕获所有异常,或者使用
catch(异常名称){}
捕获所有异常(并使您可以访问有关它们的信息)。@Ed:这是正确的。但是如果我在服务器上出错(加载问题)。这是运行时异常。我们将如何以编程方式捕获此异常?可能吗?我不知道你的意思…你可以使用我提供的语法以编程方式捕获异常。可能除了,当自定义组件抛出运行时异常,因为它无法通过网络到达特定主机,这会使你的Android应用程序崩溃.