我看到了一些这样的代码:
try
{
db.store(mydata);
}
finally
{
db.cleanup();
}我以为try应该有个catch
为什么这段代码要这样做呢?
发布于 2010-04-11 02:49:46
代码执行此操作是为了确保数据库已关闭。
通常,这样做的方法是将所有数据库访问代码放在try块中,然后将关闭数据库的调用放在finally块中。
try...finally的工作方式意味着try块中的代码会运行,而finally块中的代码会在finishes...no发生变化时运行。
除非计算机被从墙上拽出来,否则最终将被执行。
这意味着即使调用了异常,并且该方法需要三年时间才能执行,它仍然会进入finally块,并且数据库将被关闭。
https://stackoverflow.com/questions/2614473
复制相似问题