【问题标题】:What's the deal with catching exceptions?捕获异常有什么用?
【发布时间】:2023-03-15 09:17:01
【问题描述】:

所以我读过很多关于捕获异常的文章。让我们一起谈谈这个和iOS。我已将它与 Google Analytics 一起使用,以提交有关崩溃的信息并使用它来修复错误。

但这提出了一个问题。捕获这些异常有助于防止应用程序崩溃。从理论上讲,您能否防止那段代码使应用程序崩溃并保持应用程序打开。现在我明白了,如果没有要使用的内存,这可能是不可能的,但知道它仍然很高兴。

对不起,如果这听起来像一个愚蠢的问题,我真的应该阅读更多关于它并做更多的研究。任何信息都会有所帮助。

对于我这个年纪的 iOS obj-c,我确实有相当不错的了解,并且愿意研究你要说的话。

谢谢!

【问题讨论】:

  • 嘿,我也是一个很年轻的程序员。如果你有兴趣很想和你谈谈。我的个人资料上有各种联系信息。

标签: ios exception exception-handling


【解决方案1】:

永远不应该捕获 iOS 上的异常;它们是致命的,这是有原因的。与大多数具有丰富的异常层次结构和多种抛出/捕获异常的方式以使程序整体受益的语言不同,Cocoa-Touch 代码是围绕所有异常都是致命的原则构建的。认为您可以捕获通过 Apple 提供的代码的任何帧抛出的异常并让您的过程不受阻碍地继续进行是错误的。为了记录的目的而捕获并重新抛出异常是一个更严重的错误。

Cocoa-Touch 抛出的异常表示程序逻辑中的严重错误,或对象中未定义和不可解析的状态。不能忽略它们,或者在捕获它们之后将它们记录下来。为了真正保证您的流程保持稳定,必须首先修复它们并防止它们被抛出。

【讨论】:

    猜你喜欢
    • 2017-06-18
    • 2017-06-19
    • 2011-11-28
    • 2022-01-06
    • 1970-01-01
    • 1970-01-01
    • 2012-08-27
    • 2011-11-14
    • 2020-07-31
    相关资源
    最近更新 更多