[swift 进阶]读书笔记-第八章:错误处理 C8P4 将错误桥接到Objective-C

错误处理

8.4 将错误桥接到Objective-C

小节主要内容如标题⬆️

知识点1: OC中的异常应该只用来表达程序员👨‍💻‍的错误,在平时的开发中我们很少用到异常。

NSError 对象都有一个Domin字符串,还有一个整数的错误代码code

将Swift的错误桥接到OC时运行时会默认提供这个NSError对象。

如果有需要我们可以通过遵守CustomNSError来更好的实现错误桥接。

extension ParseError: CustomNSError {
    ///自定义错误的Domin
    static let errorDomain = "io.objc.parseError"
    ///自定义错误的Code
    var errorCode: Int {
        switch self {
        case .wrongEncoding: return 100
        case .warning(_, _): return 200
        }
    }
    var errorUserInfo: [String: Any] {
        return [:]
    }
}

错误相关的一些协议

LocalizedError

提供一个本地化的错误信息,来表示为什么发生(failureReason),从错误中恢复的提示(recoverySuggestion),额外的帮助文本(helpAnchor)

RecoverableError

用来描述一个用户可恢复的错误,展示一个或者多个recoveryOptions,并在用户要求可恢复的时候执行恢复

文章源文件地址,大家如果有更好的想法和观点欢迎交流

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容