套件 | flash.errors |
類別 | public dynamic class StackOverflowError |
繼承 | StackOverflowError Error Object |
語言版本: | ActionScript 3.0 |
執行階段版本: | AIR 1.0, Flash Player 9, Flash Lite 4 |
StackOverflowError 例外可能表示已經發生無窮遞迴,在此情況下,必須在函數中加入終止 case。 此外,這也可能表示遞迴演算法含有適當的終止條件,但堆疊卻已耗盡。 在這個情況下,請嘗試改為反覆地表達演算法。
公用方法
方法 | 定義自 | ||
---|---|---|---|
StackOverflowError(message:String = "")
建立新的 StackOverflowError 物件。 | StackOverflowError | ||
在錯誤建構時傳回字串形式的錯誤呼叫堆疊。 | Error | ||
指出物件是否有已定義的指定屬性。 | Object | ||
指出 Object 類別的實體是否位於指定為參數的物件原型鏈中。 | Object | ||
指出指定的屬性是否存在,以及是否可列舉。 | Object | ||
為迴圈作業設定動態屬性的可用性。 | Object | ||
傳回代表此物件的字串,根據地區特定慣例進行格式化。 | Object | ||
[覆寫]
傳回 "Error" 字串 (預設),或 Error.message 屬性中所包含的值 (如果已定義)。 | Error | ||
會傳回指定之物件的基本值。 | Object |
建構函式詳細資料
StackOverflowError | () | 建構函式 |
範例 如何使用本範例
StackOverflowErrorExample.as
下列範例會使用樣本 StackOverflowErrorExample 類別,說明因發生堆疊溢位所產生的錯誤。 這是透過下列步驟完成:
- 建構函式呼叫錯誤處理程式碼區段 (會捕捉 StackOverflowError 物件) 內的方法
lockMachine()
。 lockMachine()
方法會持續呼叫本身,直到堆疊溢位為止。- 擲回 StackOverflowError 之後,此建構函式會加以捕捉,然後透過
trace
陳述式輸出錯誤訊息。
package { import flash.display.Sprite; import flash.errors.StackOverflowError; public class StackOverflowErrorExample extends Sprite { public function StackOverflowErrorExample() { try { lockMachine(); } catch(e:StackOverflowError) { trace(e); // StackOverflowError: Error #1023: Stack overflow. } } private function lockMachine():void { lockMachine(); } } }
Tue Jun 12 2018, 03:47 PM Z