Objective-C和Sprite Kit游戏开发从入门到精通
上QQ阅读APP看书,第一时间看更新

3.6 异常处理

程序执行出错了!怎么办?怎么办?怎么办?重要的事要说三遍!

在Objective-C中,异常的捕捉机制和很多编程语言是不一样的,它是通过指令,而不通过语句结构来实现的。基本应用格式如下。

    @try {
        // 可能出现异常的代码
    }
    @catch (NSException *exception) {
        // 处理捕捉到的异常
    }
    @finally {
        // 完成清理工作,无论是否有异常出现都会执行
    }

如果在@catch块中无法或不需要处理异常,还可以使用@throw指令向代码的上一级结构抛出异常,如果是在main()函数中,就是向系统抛出异常,当然,如果真是这样,程序也就挂掉了。

实际上,大多数编程语言在处理异常时都会很明显的性能问题,特别是在代码执行过程中真的出现问题时,Objective-C也是这样的。那么,在开发中,我们应该怎么办呢?最好的办法当然是提高代码质量,这样就可以将大多数可能的问题消灭在开发阶段。

软件的性能、正确性、稳定性,包括对于异常情况的处理策略,需要开发人员根据项目的特点综合考虑和权衡。

本章讨论了在Obejctive-C中逻辑运算和流程控制语句结构,通过它们的使用,可以灵活地控制代码执行的逻辑,创建出功能更加强大的代码。

第4章,我们将讨论面向对象编程在Objective-C中的具体实现和应用。