語言版本: | ActionScript 3.0 |
執行階段版本: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Error
建構函數建立 Error 物件。 一般來說,您會從 try
程式碼區塊內擲回新的 Error 物件,該物件是由 catch
程式碼區塊所捕捉。
您也可以建立一個 Error 類別的子類別,然後擲回該子類別的實體。
公用屬性
屬性 | 定義自 | ||
---|---|---|---|
constructor : Object
類別物件的參照或是特定物件實體的建構函數。 | Object | ||
errorID : int [唯讀]
包含與特定錯誤訊息相關聯的參照號碼。 | Error | ||
message : String
包含與 Error 物件有關聯的訊息。 | Error | ||
name : String
包含 Error 物件的名稱。 | Error |
公用方法
方法 | 定義自 | ||
---|---|---|---|
會建立新的 Error 物件。 | Error | ||
在錯誤建構時傳回字串形式的錯誤呼叫堆疊。 | Error | ||
指出物件是否有已定義的指定屬性。 | Object | ||
指出 Object 類別的實體是否位於指定為參數的物件原型鏈中。 | Object | ||
指出指定的屬性是否存在,以及是否可列舉。 | Object | ||
為迴圈作業設定動態屬性的可用性。 | Object | ||
傳回代表此物件的字串,根據地區特定慣例進行格式化。 | Object | ||
[覆寫]
傳回 "Error" 字串 (預設),或 Error.message 屬性中所包含的值 (如果已定義)。 | Error | ||
會傳回指定之物件的基本值。 | Object |
屬性詳細資訊
errorID | 屬性 |
message | 屬性 |
public var message:String
語言版本: | ActionScript 3.0 |
執行階段版本: | AIR 1.0, Flash Player 9, Flash Lite 4 |
包含與 Error 物件有關聯的訊息。 這個屬性的預設值為 "Error
"。 您可以將錯誤字串傳遞給 Error
建構函數,在建立 Error 物件時指定 message
屬性。
相關 API 元素
name | 屬性 |
public var name:String
語言版本: | ActionScript 3.0 |
執行階段版本: | AIR 1.0, Flash Player 9, Flash Lite 4 |
包含 Error 物件的名稱。 這個屬性的預設值為 "Error
"。
相關 API 元素
建構函式詳細資料
Error | () | 建構函式 |
public function Error(message:String = "", id:int = 0)
語言版本: | ActionScript 3.0 |
執行階段版本: | AIR 1.0, Flash Player 9, Flash Lite 4 |
會建立新的 Error 物件。 如果已指定 message
,其值便會指定給該物件的 Error.message
屬性。
message:String (default = " ") — 與 Error 物件相關聯的字串,這個參數是選擇性的。
| |
id:int (default = 0 ) — 要與特定錯誤訊息產生關聯的參照號碼。
|
相關 API 元素
範例 ( 如何使用本範例 )
下列範例會建立新的 Error 物件
err
,然後使用 Error()
建構函式將 "New Error Message"
字串指定給 err
。
var err:Error = new Error(); trace(err.toString()); // Error err = new Error("New Error Message"); trace(err.toString()); // Error: New Error Message
方法詳細資訊
getStackTrace | () | 方法 |
public function getStackTrace():String
語言版本: | ActionScript 3.0 |
執行階段版本: | AIR 1.0, Flash Player 9, Flash Lite 4 |
在錯誤建構時傳回字串形式的錯誤呼叫堆疊。如下列範例所示,傳回值的第一行是例外物件的字串形式,接著則是堆疊追蹤元素:
TypeError: Error #1009: Cannot access a property or method of a null object reference at com.xyz::OrderEntry/retrieveData()[/src/com/xyz/OrderEntry.as:995] at com.xyz::OrderEntry/init()[/src/com/xyz/OrderEntry.as:200] at com.xyz::OrderEntry()[/src/com/xyz/OrderEntry.as:148]
上述清單顯示,在除錯程式版本的 Flash Player 中呼叫或程式碼在 AIR Debug Launcher (ADL) 中執行時這個方法的值。當程式碼在 Flash Player 或 AIR 發行版本中執行時,會提供不含檔案路徑和行號資訊的堆疊追踨,如下列範例所示:
TypeError: Error #1009: Cannot access a property or method of a null object reference at com.xyz::OrderEntry/retrieveData() at com.xyz::OrderEntry/init() at com.xyz::OrderEntry()
對於 Flash Player 11.4 及更早版本與 AIR 3.4 及更新版本,當程式碼在除錯程式版本 Flash Player 或 AIR Debug Launcher (ADL) 中執行時,堆疊追蹤是「唯一」可供使用的。在那些非除錯程式版本的執行階段中,呼叫此方法會傳回 null
。
String — 呼叫堆疊的字串表示。
|
toString | () | 方法 |
override public function toString():String
語言版本: | ActionScript 3.0 |
執行階段版本: | AIR 1.0, Flash Player 9, Flash Lite 4 |
傳回 "Error"
字串 (預設),或 Error.message
屬性中所包含的值 (如果已定義)。
String — 錯誤訊息。
|
相關 API 元素
範例 ( 如何使用本範例 )
下列範例會建立新的 Error 物件
err
,然後使用 Error()
建構函式將 "New Error Message"
字串指定給 err
。 最後,message
屬性會設定為覆寫 "New Error Message"
的 "Another New Error Message"
。
var err:Error = new Error(); trace(err.toString()); // Error err = new Error("New Error Message"); trace(err.toString()); // Error: New Error Message err.message = "Another New Error Message"; trace(err.toString()); // Error: Another New Error Message
範例 如何使用本範例
ErrorExample.as
下列範例會使用
ErrorExample
類別來顯示如何產生自訂錯誤。 您可以使用下列步驟:
- 已宣告 Array 類型的區域變數
nullArray
,但是請注意,未曾建立新的 Array 物件。 - 此建構函式嘗試將某個值載入到未初始化的陣列中,其方式是使用錯誤處理程式碼片段內的
push()
方法,而這個程式碼片段會使用擴充Error
的CustomError
類別來捕捉自訂錯誤。 - 當擲回 CustomError 時,此建構函式會捕捉此錯誤,然後使用
trace()
陳述式來輸出錯誤訊息。
package { import flash.display.Sprite; public class ErrorExample extends Sprite { private var nullArray:Array; public function ErrorExample() { try { nullArray.push("item"); } catch(e:Error) { throw new CustomError("nullArray is null"); } } } } class CustomError extends Error { public function CustomError(message:String) { super(message); } }
Tue Jun 12 2018, 03:47 PM Z