1,只有发生了可使整个应用程序崩溃的严重错误时,才应使用异常
@throw [NSException .....]
一般都用在已知问题,比如某个抽象类不让初始化,如果初始化就抛异常。
注意:使用@throw,要注意释放资源的问题,MRC下 要在抛之前 释放调资源,ARC下需要在编译器标志叫做 -fobjc-arc-exceptions,不过如果加啦这个标识后,会引入一下额外代码,他会在不抛出异常时也会照样执行这部分代码。
2,在错误不那么严重的情况下,可以指派“委托方法”来处理错误,也可以把错误信息放在NSError对象里,经由“输出参数”返回给调用者。