【问题标题】:Exception handling: If condition versus Exception异常处理:如果条件与异常
【发布时间】:2010-08-26 05:35:05
【问题描述】:

为了验证一个参数的有效性,C语言使用一堆IF Else条件来判断它是否有效。在 JAVA 中,它有 Exception 工具来处理这个问题。这两种方法有什么用,这两种方法的优缺点是什么?谢谢!

问候!

【问题讨论】:

    标签: exception-handling


    【解决方案1】:

    就个人而言,我喜欢断言声明。

    但在这种情况下,我更喜欢 Try-Catch 处理复杂问题,而 if-else 处理更简单的问题。

    If-else(s) 在有很多的地方不可读和不可维护,尤其是对于复杂的问题。这就是为什么 try-catch 来救援的原因。假设给定的输入是正确的,让我们处理它。当在某些行中给定的输入被证明不正确时,只需转到 catch 块并返回一些默认值。

    有人认为 try-catch 比较慢。嗯,这是真的。但是慢了多少? 0.1 毫秒? 1 毫秒?为了可读性和可维护性,我会牺牲这些毫秒。

    毕竟,在编程中,每个函数/过程都有先决条件。我们都知道前置条件是什么意思。最好的方法(我个人的看法)是断言所有参数都符合所有先决条件。这样我们就可以假设给定的输入总是正确的,因为另一层的伙伴已经保证了这一点。

    【讨论】:

      猜你喜欢
      • 2011-02-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-03
      相关资源
      最近更新 更多