zoukankan      html  css  js  c++  java
  • Swift2.0异常处理

    // 在抛出异常之前,我们需要在函数或方法的返回箭头 -> 前使用 throws 来标明将会抛出异常
    
    func myMethodRetrunString() throws -> String
    
    func myMethodRetrunNothing() throws
    

    如何抛出异常

    func myMethod() throws {
      if item = nil {
        throw MyError.NotExist
      }
    }
    

    如何获取并处理异常?

    do {
        try myMethod()
    } catch MyError.NotExist {
        // deal with error
    } catch MyError. OutOfRange  {
        // deal with error
    }
    

    不处理异常

    如果我不想处理异常怎么办,或者说,我非常确定某个方法或者函数虽然声明会抛出异常,但是我自己知道我在使用时候是绝对不会抛出任何异常的。这种情况下 我们可以使用 try!

    try! myMethod()
    

    当然,如果你使用 try!,而你的方法或者函数抛出了异常,那么你会得到一个运行中异常 (runtime error) 所以我们开发者需要慎用哦。

    补充一点, try! 在苹果的资料里说是" Disabling Error Propagation ", 禁止错误继续传播. 

    而 try 是向上级的scope传播错误, 这和其他一些高级语言的try略有不同, 其他的高级语言try是捕获异常的意思.
    swift里, 可以只有try, 没有catch.

  • 相关阅读:
    html控件使用
    托盤
    托盘的实现
    ws2s函数
    网络验证
    右上角X灰化
    如何模拟一个http请求并把response的内容保存下载下来,导出到excel中(结尾福利)
    排序的几种算法(一):冒泡排序
    python中的break eturnpasscontinue用法
    python中socket模块详解
  • 原文地址:https://www.cnblogs.com/Rinpe/p/5477749.html
Copyright © 2011-2022 走看看