美文网首页门外汉自学Swift
20170621进阶知识-错误处理

20170621进阶知识-错误处理

作者: 花间提壶蛋大厨 | 来源:发表于2017-06-21 21:57 被阅读0次

1、do-try-catch:先尝试操作,如果失败则处理错误,完成后释放资源。

do {

try 语句

成功处理语句组

} catch 匹配错误 {

错误处理语句组

}

2、Swift错误类型必须遵从Error协议

enum DAOError:Error {

case noData

case primaryKeyNull

}

3、声明抛出错误

方法没有返回值,throws关键字放在参数后面

func remove(_ model: Note) throws { }

方法有返回值,throws关键字放到参数和返回值之间

func findAll() throws -> [Note] { }

4、在函数或方法中抛出错误

①在函数或方法中,通过throw语句认为的抛出错误

②在函数或方法中,调用其他可以抛出错误的函数或方法完成,但是没有捕获处理,会导致错误被传播出来

5、throw和throws区别

throw关键字用于在方法或函数内,人为地抛出错误,而非系统抛出的错误。

throw后面跟有抛出的错误类型。

throws关键字用于方法或函数声明抛出错误,声明了抛出错误的方法或函数可以不处理错误,有错误发生后则将错误传播给它的调用者。

6、try、try?和try!区别

try与do-catch语句配合使用,进行错误捕获处理。

try?语句将错误转换为可选类型,如果有错误发生则nil被返回。

try!语句可以打破错误传播链条,但是如果真的发生错误就出现运行期错误,导致程序的崩溃。

相关文章

  • 20170621进阶知识-错误处理

    1、do-try-catch:先尝试操作,如果失败则处理错误,完成后释放资源。 do { try 语句 成功处理语...

  • iOS静默推送进阶知识

    iOS静默推送进阶知识 iOS静默推送进阶知识

  • Kotlin 进阶之路6 异常错误处理和类型检查

    Kotlin 进阶之路 目录 1、异常错误处理 2、类型检查与转换 空类型 任意类型都有可空和不可空两种 智能类型...

  • 固定案例

    ![Uploading Snip20170621_10_744418.png . . .] ![Uploading...

  • Swift进阶十:错误处理

    通过将函数标记为 throws 来表示可能会出现失败的情况。除了调用者必须处理成功和失败的情况的语法以外,和可选值...

  • 20170621

    一切可以妥当的一定会妥当!准备迎接奇迹! 感恩 感恩每天都可以上班,感恩能拥有这份心仪的工作,感恩公司给予的平台,...

  • 20170621

    晨起感恩,感恩玉米,感恩茄子豆角土豆各类蔬菜食物呈现于我面前,感恩我拥有这么多,可以让胃觉得到满足。 感恩一路走来...

  • 20170621

    1、【新认识】游戏能应用的现实中吗? 上次说到人身和心都停留在原始狩猎时代,只是生活在现代。旧有行为模式同样对人有...

  • 20170621

    明天就要搬家啦。 大学四年,就这样不会再被寝室刷屏了,回想起来,感觉不剩什么了,只是有两捆新书而已,去找收废纸的换...

  • 20170621

    上礼拜周末加这礼拜一,三天时间去了趟南京。之前一直听说南京的美食好吃,就想去试试。这次终于去了,结果跟我想象的差远...

网友评论

    本文标题:20170621进阶知识-错误处理

    本文链接:https://www.haomeiwen.com/subject/rptxcxtx.html