iOS捕獲異常,常用的異常處理方法

2021-07-09 11:27:19 字數 1916 閱讀 9419

以下程式已測試並通過:

裝置:ios 8模擬器中

開發工具:xcode6.1

使用@try、catch捕獲異常:

以下是最簡單的**寫法,其中@finally可以去掉:

1

2

3

4

5

6

7

8

9

@try

@catch(n***ception *exception)

@finally

在這裡舉多一具比較詳細的方法,丟擲異常:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

@try

@catch(n***ception *exception)

@finally

// 4

// 這裡一定會執行

nslog(@"try");

trytwo方法**:

- (void)trytwo

@catch(n***ception *exception)

@finally

// 9

// 如果丟擲異常,那麼這段**則不會執行

nslog(@"如果這裡丟擲異常,那麼這段**則不會執行");

}

為了方便大家理解,我在這裡再說明一下情況:

如果6丟擲異常,那麼執行順序為:1->5->6->8->3->4

如果6沒丟擲異常,那麼執行順序為:1->5->7->8->9->3->4

2)部分情況的崩潰我們是無法避免的,就算是qq也會有崩潰的時候。因此我們可以在程式崩潰之前做一些「動作」(收集錯誤資訊),以下例子是把捕獲到的異常傳送至開發者的郵箱。

nssetuncaughtexceptionhandler(&uncaughtexceptionhandler);

returnyes;

}

void uncaughtexceptionhandler(n***ception *exception)

IOS捕獲異常,常用的異常處理方法

以下是最簡單的 寫法,其中 finally可以去掉 try catch n ception exception finally 在這裡舉多一具比較詳細的方法,丟擲異常 try catch n ception exception finally 4 這裡一定會執行 nslog try trytwo方法...

iOS捕獲異常,常用的異常處理方法

以下程式已測試並通過 裝置 ios 8模擬器中 開發工具 xcode6.1 使用 try catch捕獲異常 以下是最簡單的 寫法,其中 finally可以去掉 1 2 3 4 5 6 7 8 9 try catch n ception exception finally 在這裡舉多一具比較詳細的方...

iOS常用捕獲異常及處理方法

使用 try catch捕獲異常 try catch n ception exception finally 有時候崩潰我們是無法避免的,因此我們可以在程式崩潰之前做一些 動作 收集錯誤資訊 下面的例子是把捕獲到的異常傳送至開發者的郵箱。來自garveycalvin的部落格 nssetuncaugh...