首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >异常与流控制

异常与流控制
EN

Stack Overflow用户
提问于 2013-01-15 10:47:00
回答 2查看 149关注 0票数 2

有效Java异常文章描述了一个应该是processCheck()CheckingAccount。此外,它还指出:

用Java表示应急响应的自然方法是定义两个异常,比如StopPaymentExceptionInsufficientFundsException

对我来说,这听起来像是用于流控制的异常。请解释一下为什么在这里使用检查过的异常来控制流量是可以的吗?(或者这是否不是流控制的情况。)

EN

回答 2

Stack Overflow用户

发布于 2013-01-15 10:50:07

异常,特别是检查过的各种异常,对于流控制来说是完美的,但只适用于特殊情况:如果异常是每次运行代码时可预见发生的情况,因为它是“愉快的一天场景”的一部分,只有这样,您才会误用它们。这方面的典型示例是使用while (true)循环迭代数组,并依赖于ArrayIndexOutOfBounds来破坏它。

另一个例外处理的问题是“带外信令”,在这种情况下,您已经占用了“欢乐日”数据的方法返回值,并且您需要另一个可分辨的通道来指示没有数据可返回的原因。在Haskell/Scala中,您将使用可能的monad;在Java中,您最好坚持检查异常。

票数 5
EN

Stack Overflow用户

发布于 2013-01-15 11:02:23

不是

不要在流程控制中使用异常。当服务器处于高负载状态时,抛出异常会使服务器更慢、更慢。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14336051

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档