美文网首页
Swift中错误的处理方式

Swift中错误的处理方式

作者: yyggzc521 | 来源:发表于2022-05-04 15:53 被阅读0次

【方式一】

使用try关键字,是最简便的,即甩锅,将这个抛出给别人(向上抛出,抛给上层函数)。但是在使用时,需要注意以下两点:

try? 返回一个可选类型,只有两种结果:

要么成功,返回具体的字典值
要么错误,但并不关心是哪种错误,统一返回nil

try! 表示你对这段代码有绝对的自信,这行代码绝对不会发生错误

//CJLTeacher中定义一个height属性,并未遵守协议
class CJLTeacher: CustomJSONMap {
    var age = 18
    var name = "CJL"
    var height = 1.85
}

/*****1、try? 示例*****/
var t = CJLTeacher()
print(try? t.jsonMap())

/*****打印结果*****/
nil

/*****2、try! 示例*****/
var t = CJLTeacher()
print(try! t.jsonMap())

/*****打印结果*****/
Fatal error: 'try!' expression unexpectedly raised an error: _5_MirrorAndError.JSONMapError.notConformProtocol: file _5_MirrorAndError/main.swift, line 90
2020-12-20 18:27:28.305112+0800 05-MirrorAndError[18642:1408258] Fatal error: 'try!' expression unexpectedly raised an error: _5_MirrorAndError.JSONMapError.notConformProtocol: file _5_MirrorAndError/main.swift, line 90

<!--3、如果直接使用try,是向上抛出-->
// 错误是向上抛出的,即抛给了上层函数,如果上层函数也不处理,则直接抛给main,main没有办法处理,则直接报错

var t = CJLTeacher()
try t.jsonMap()

/*****打印结果*****/
Fatal error: Error raised at top level: _5_MirrorAndError.JSONMapError.notConformProtocol: file Swift/ErrorType.swift, line 200
2020-12-20 18:31:24.837476+0800 05-MirrorAndError[18662:1410970] Fatal error: Error raised at top level: _5_MirrorAndError.JSONMapError.notConformProtocol: file Swift/ErrorType.swift, line 200

【方式二】

使用do...catch

var t = CJLTeacher()
do{
    try t.jsonMap()
}catch{
    print(error)
}

参考资料:
iOS之swift中错误处理的方式

相关文章

  • Swift中的错误处理

    1.Swift中的错误处理方式 Swift中错误用符合Error协议的类型表示。一般是枚举enum或者结构体str...

  • [Swift]错误处理

    Swift中错误处理机制很丰富,也比较容易掌握,今天就来学习一下swift中的常用错误处理方式. 1. asser...

  • Swift中错误的处理方式

    【方式一】 使用try关键字,是最简便的,即甩锅,将这个抛出给别人(向上抛出,抛给上层函数)。但是在使用时,需要注...

  • Swift 处理异常

    处理方式 定义异常类型 在 Swift 中,错误用符合Error协议的类型的值来表示。这个空协议表明该类型可以用于...

  • Swift备忘

    Swift初体验 Swift Tips Swift三种不同的【异常处理方式】 Swift 3.0 private变...

  • Swift2.0--- Error Handling

    错误处理 swift提供在运行时抛出,捕获,传送和控制可回收错误 错误的表示 在Swift中,错误ErrorTyp...

  • 《Swift从入门到精通》(十五):错误处理

    错误处理(学习笔记) 环境Xcode 11.0 beta4 swift 5.1 错误表现和抛出在 swift 中,...

  • Swift中的错误处理

    Swift中的错误处理 Swift provides first-class support for throwi...

  • Swift3.x - 错误处理

    Swift异常错误处理:是响应错误以及从错误中恢复的过程。Swift提供了在运行时对可恢复错误的抛出、捕获、传递和...

  • Swift中的异常处理

    异常处理 错误处理(Error handling)是响应错误以及从错误中恢复的过程 在 Swift 中,错误用符合...

网友评论

      本文标题:Swift中错误的处理方式

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