问题标签 [try-finally]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
delphi - 使用 try/finally try/except 代替 begin/end 是否被认为是一种不好的做法或存在任何缺点?
在我维护的一些应用程序的许多地方,我发现在一个或句子中使用一个try/finally
或try/except
块的代码避免使用开始/结束for loop
if
考虑下一个代码(不是生产代码,只是一个示例)
问题,在delphi中使用try/finally或try/except代替begin/end是否被认为是一种不好的做法、代码气味或存在任何缺点?
更新
对于愚蠢的示例代码,我很抱歉,只是为了澄清 try/finally 和 try/except 不会假装替换 begin/end ,只是为了避免在使用时使用它(开始/结束) try/finally 或 try/except 不需要开始/结束。
python - Python:在循环中的 try-finally 语句中使用 continue
将以下代码:
总是打印消息“等待 10 秒……”,休眠 10 秒,然后再做一次?换句话说,finally
即使循环被continue
-ed,子句中的语句也会运行吗?
c# - 使用 finally 而不是 catch
我现在已经多次看到这种模式:
我一直在想:为什么这比使用 catch 进行回滚更好?
确保更改在失败时回滚的两种方法之间有什么区别?
java - 使用 try 和 finally 的同步方法的行为
假设以下方法:
我知道即使在 return 语句之后,finally 块仍然会被执行。甚至可以“覆盖”返回值!但我的问题是,该方法会在 return 语句之后还是 finally 之后解锁?
c# - 在 finally 块中测试返回值
所有,这是一个简单的。finally
有没有一种方法可以在不做的情况下测试块内的返回值
我是否必须使用变量result
是否有更清洁的方法?
注意:我知道这不是我现在正在做的很多工作。我对 .NET 世界的复杂性很好奇。
python - 为什么我们需要 Python 中的“finally”子句?
我不确定为什么我们需要finally
在try...except...finally
语句中。在我看来,这个代码块
与此相同,使用finally
:
我错过了什么吗?
python - 在 python 中使用“finally”子句的范围是什么?
可能重复:
else 的目的和最后的异常处理
我想了解为什么该finally
子句存在于try/except
语句中。我理解它的作用,但如果它应该在语言中占有一席之地,我显然会错过一些东西。finally
具体来说,在字段中编写子句与在语句之外编写子句有什么区别try/except
?
java - 尝试,捕捉,最后执行
可能重复:
在 finally 块中抛出异常
只有在 try 块中抛出异常时才会执行 catch 块。
finally 块总是在 try(-catch) 块之后执行,无论是否抛出异常。
我的问题是如果我在 finally 块中遇到异常而不是如何处理它??????
c# - 尝试后终于没有调用
由于某种原因,在我的控制台应用程序中,我无法让 finally 块运行。我正在编写这段代码来测试 finally 块是如何工作的,所以它非常简单:
起初我遇到了这里描述的问题,但后来我尝试在 Visual Studio 之外运行程序,但出现“程序已停止响应”错误。
java - 在java中,有没有办法确保在finally块中调用多个方法?
所以我有一个 try/finally 块。我需要在 finally 块中执行一些方法。但是,这些方法中的每一个都可能引发异常。有没有办法确保在没有嵌套 finally 块的情况下调用(或尝试)所有这些方法?
这就是我现在所做的,这很丑陋:
有没有更优雅的方法来做到这一点?