建立自訂的錯誤類別

Flash Player 9 以及更新的版本,Adobe AIR 1.0 以及更新的版本

您可以擴充其中一個標準 Error 類別,在 ActionScript 中建立您專用的錯誤類別。建立自己的錯誤類別包含了幾個原因:

  • 為找出您的應用程式特有的錯誤或錯誤群組。

    例如,除了 Flash 執行階段所捕捉的錯誤外,也可以對自己程式碼所擲回的錯誤採取不同的動作。您可以建立 Error 類別的子類別,追蹤 try..catch 區塊中新的錯誤資料類型。

  • 針對應用程式所產生的錯誤,提供獨特的錯誤顯示能力。

    例如,您可以建立新的 toString() 方法,以特定方式來格式化錯誤訊息。您也可以定義 lookupErrorString() 方法,根據使用者的語言偏好設定,採用錯誤代碼並擷取適當的訊息。

專用的 error 類別必須擴充核心 ActionScript Error 類別。以下是專用的 AppError 類別擴充 Error 類別的範例:

public class AppError extends Error 
{ 
    public function AppError(message:String, errorID:int) 
    { 
        super(message, errorID); 
    } 
}

以下是在您的專案中使用 AppError 的範例:

try 
{ 
    throw new AppError("Encountered Custom AppError", 29); 
} 
catch (error:AppError) 
{ 
    trace(error.errorID + ": " + error.message) 
}
備註: 若您要覆寫子類別中的 Error.toString() 方法,請指定一個 ... (rest) 參數。ActionScript 3.0 所依據的 ECMAScript 語言規格會以上述方式定義 Error.toString() 方法,因此基於舊版相容性,ActionScript 3.0 也會以相同方式定義這個方法。因此,當您覆寫 Error.toString() 方法時,請完全符合這些參數。您不需在執行階段傳遞任何參數至 toString() 方法,因為這些參數都會遭到忽略。