如果catch和finallyblock都抛出异常会发生什么? 最佳答案 当finallyblock抛出异常时,它将有效地隐藏catchblock抛出的异常,并将成为最终抛出的异常。因此,重要的是在捕获时记录异常,或者确保finallyblock本身不会抛出异常,否则您可能会抛出被扼杀且从未见过的异常。 关于c#-如果catch和finallyblock都抛出异常会发生什么?,我们在StackOverflow上找到一个类似的问题: https://stac
如果catch和finallyblock都抛出异常会发生什么? 最佳答案 当finallyblock抛出异常时,它将有效地隐藏catchblock抛出的异常,并将成为最终抛出的异常。因此,重要的是在捕获时记录异常,或者确保finallyblock本身不会抛出异常,否则您可能会抛出被扼杀且从未见过的异常。 关于c#-如果catch和finallyblock都抛出异常会发生什么?,我们在StackOverflow上找到一个类似的问题: https://stac
我对java不熟悉,最近看到一些同事写的代码让我很困惑。这是它的要点:publicresponsenewStuff(//randomdatainside){try{responseor=//givesitavaluelog.info(or.toString());returnor;}catch(Exceptione){e.printStackTrace();}finally{returnnull;}}在这里添加finallyblock真的有什么意义吗?我不能只在catchblock中添加returnnull,这将执行相同的行为,还是我错了? 最佳答案
我对java不熟悉,最近看到一些同事写的代码让我很困惑。这是它的要点:publicresponsenewStuff(//randomdatainside){try{responseor=//givesitavaluelog.info(or.toString());returnor;}catch(Exceptione){e.printStackTrace();}finally{returnnull;}}在这里添加finallyblock真的有什么意义吗?我不能只在catchblock中添加returnnull,这将执行相同的行为,还是我错了? 最佳答案
我从来没有正确理解finally语句的用法。谁能告诉我两者之间有什么区别:try{a;block;off;statements;}catch(Exceptione){handle;exception;e;}finally{do;some;cleanup;}一方面并且:try{a;block;off;statements;}catch(Exceptione){handle;exception;e;}do;some;cleanup;另一方面 最佳答案 如果tryblock通过抛出一个不是java.lang.Exception的java.
我从来没有正确理解finally语句的用法。谁能告诉我两者之间有什么区别:try{a;block;off;statements;}catch(Exceptione){handle;exception;e;}finally{do;some;cleanup;}一方面并且:try{a;block;off;statements;}catch(Exceptione){handle;exception;e;}do;some;cleanup;另一方面 最佳答案 如果tryblock通过抛出一个不是java.lang.Exception的java.
因此,在Java中,构造函数的第一行必须是对super的调用……无论是隐式调用super(),还是显式调用另一个构造函数。我想知道的是,为什么我不能在它周围放一个tryblock?我的具体情况是我有一个模拟类进行测试。没有默认构造函数,但我想要一个使测试更易于阅读。我还想将构造函数抛出的异常包装到RuntimeException中。所以,我实际上想要做的是:publicclassMyClassMockextendsMyClass{publicMyClassMock(){try{super(0);}catch(Exceptione){thrownewRuntimeException(e)
因此,在Java中,构造函数的第一行必须是对super的调用……无论是隐式调用super(),还是显式调用另一个构造函数。我想知道的是,为什么我不能在它周围放一个tryblock?我的具体情况是我有一个模拟类进行测试。没有默认构造函数,但我想要一个使测试更易于阅读。我还想将构造函数抛出的异常包装到RuntimeException中。所以,我实际上想要做的是:publicclassMyClassMockextendsMyClass{publicMyClassMock(){try{super(0);}catch(Exceptione){thrownewRuntimeException(e)
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter寻求指导。关闭9年前.“finally”block总是在try-catch结束时执行,无论是否发生异常。但也总是执行try-catch之外和之后的每一行代码。那么,为什么要使用finally语句呢?例子:try{//code...}catch(Exceptione){//code...}finally{System.out.println("Thislineisalways
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter寻求指导。关闭9年前.“finally”block总是在try-catch结束时执行,无论是否发生异常。但也总是执行try-catch之外和之后的每一行代码。那么,为什么要使用finally语句呢?例子:try{//code...}catch(Exceptione){//code...}finally{System.out.println("Thislineisalways