錯誤處理基本課程

錯誤處理簡介

執行階段錯誤指的是讓 ActionScript 內容無法繼續在 Adobe Flash Player 中執行的 ActionScript 程式碼錯誤。為了確保您的 ActionScript 程式碼能夠讓使用者順利執行,您必須在應用程式中撰寫能夠處理錯誤的程式碼,也就是必須能夠修正錯誤、提出替代方案,或是至少讓使用者知道已經發生錯誤。這項程序我們稱為「錯誤處理」。

然而,「錯誤處理」這個類別極為廣泛,包含對許多種錯誤的回應,而這些錯誤都是在編譯或執行階段所擲回。發生在編譯階段的錯誤通常比較容易分辨出來,而您必須加以修正,才能完成 SWF 檔的建立程序。本章將不討論編譯階段錯誤;如需有關撰寫不包含編譯階段錯誤之程式碼的詳細資訊,請參閱ActionScript 語言和語法使用 ActionScript 設計物件導向程式。本章將著重在執行階段錯誤。

執行階段錯誤比較不容易偵測出來,因為必須要實際執行錯誤的程式碼才會出現此類錯誤。如果程式某個區段包含數個程式碼分支,像是 if..then..else 陳述式,則您必須代入實際應用中使用者可能會使用的所有可能輸入值來測試每個可能的情況,以便確定程式碼完全沒有錯誤。

執行階段錯誤可分為兩個類別:「程式錯誤」指的是 ActionScript 程式碼中的錯誤,例如在方法參數中指定了錯誤的資料類型;「邏輯錯誤」則是程式中的邏輯錯誤 (資料檢查與數值操作),例如在計算銀行應用程式中的利率時,使用了錯誤的公式。同樣地,通常您只需小心測試應用程式,就能夠事先偵測並修正這兩種類型的錯誤。

最理想的情況就是在您將應用程式發佈給一般使用者之前,先從應用程式中找出並移除所有的錯誤。然而,並非所有的錯誤都可以事先察覺或是預防。例如,假設您的 ActionScript 應用程式從您掌控範圍外的特定網站載入一些資訊。如果在載入過程中網站無法使用,則仰賴該外部資料的部分應用程式也會跟著出現異常行為。處理錯誤時,最重要的事就是為這些未知的情況做好準備,並在發生時妥善地加以處理,以便讓使用者繼續使用應用程式,或是至少讓使用者看到一則友善的錯誤訊息,告知他們程式為何無法正常運作。

ActionScript 以下列兩種方式來表示執行階段錯誤:

若要判別特定方法是否會觸發錯誤或錯誤事件,請參閱ActionScript 3.0 語言和組件參考中的方法項目。

常見錯誤處理工作

底下是您可能需要在程式碼中執行的常見錯誤相關工作:

重要概念與術語

下列參考清單包含了您將在本章碰到的重要術語:

逐步執行章節內的範例

當您研讀本章的內容時,可能會想要自行測試其中的部分範例程式碼列表。本章內的程式碼列表基本上都包含了適當的 trace() 若要測試本章內的程式碼列表:

  1. 建立空白的 Flash 文件。
  2. 在「時間軸」中選取關鍵影格。
  3. 開啟「動作」面板,並將程式碼列表複製到 Script 窗格中。
  4. 使用「控制>測試影片」執行程式。

    您會在「輸出」面板中看到程式碼列表之 trace() 函數的結果。

後面的一些程式碼列表比較複雜,已撰寫成類別。若要測試這些範例:

  1. 建立空白的 Flash 文件,並儲存在電腦上。
  2. 建立新的 ActionScript 檔案,並將它儲存在與此 Flash 文件相同的目錄中。檔案的名稱必須和程式碼列表中的類別名稱相同。例如,如果程式碼列表定義了名為 ErrorTest 的類別,就使用 ErrorTest.as 這個名稱來儲存 ActionScript 檔案。
  3. 將程式碼列表複製到 ActionScript 檔案中,並儲存該檔案。
  4. 在 Flash 文件中按一下「舞台」或工作區的空白部分,以啟動文件的「屬性」檢測器。
  5. 在「屬性」檢測器的「文件類別」欄位中,為您由文字中複製的 ActionScript 類別輸入其名稱。
  6. 使用「控制>測試影片」執行程式

    您將會在「輸出」面板 (如果範例使用 trace() )

這些測試範例程式碼列表的技巧會在測試章節內的範例程式碼列表中詳細說明。


Flash CS3

 

有新的意見加入至這個頁面時,傳送電子郵件給我 | 意見報告

目前頁面: http://livedocs.adobe.com/flash/9.0_tw/main/00000096.html