This page was saved using jaction on 2006-09-04 8:34:05.
Address: http://flexdocs.kr/docs/flex2/langref/flash/errors/StackOverflowError.html
Title: flash.errors.StackOverflowError (Flex™ 2 레퍼런스 가이드)  •  Size: 22415
Packageflash.errors
Classpublic dynamic class StackOverflowError
InheritanceStackOverflowError Inheritance Error Inheritance Object

ActionScript 는, 스크립트로 사용할 수 있는 스택을 다 사용했을 경우에 StackOverflowError 예외를 슬로우 합니다. ActionScript 는 스택을 사용해, 스크립트내에서 행해진 각 Methods 호출해에 관한 정보 (예를 들어, Methods가 사용하는 로컬 변수)를 보관합니다. 사용할 수 있는 스택 스페이스의 양은, 시스템에 따라서 다릅니다.

StackOverflowError 예외는, 무한 반복이 발생한 것을 나타내고 있을 가능성이 있습니다. 그 경우, 함수에 종료 조건을 추가할 필요가 있습니다. 또, 재귀 알고리즘에는 적절한 종료 조건이 있지만, 단지 스택을 다 사용해 버린 것을 나타내고 있을 가능성도 있습니다. 이 경우, 대신 방법으로서 알고리즘을 반복적으로 표현하도록 해 주세요.

View the examples

See also

에러 이벤트에의 응답과 스테이터스


Public property
 property정의
 Inheritedconstructor : Object
특정의 object 인스턴스의 클래스 object 또는 constructor    함수에의 참조입니다.
Object
 InheritederrorID : int
특정의 에러 메세지에 관련지을 수 있었던 참조 번호입니다.
Error
 Inheritedmessage : String
Error object에 관련지을 수 있었던 메세지입니다.
Error
 Inheritedname : String
Error object의 이름입니다.
Error
 Inheritedprototype : Object
[static] 클래스 또는 함수 object의 prototype object에의 참조입니다.
Object
Public Methods
 Methods정의
  StackOverflowError (message:String = "")
새로운 StackOverflowError object를 작성합니다.
StackOverflowError
 InheritedgetStackTrace ():String
에러의 구축시에 에러의 호출 스택을 string로 돌려줍니다 (디버거 버젼의 Flash Player 전용).
Error
 InheritedhasOwnProperty (name:String ):Boolean
object로 지정된 property가 정의되고 있는지 어떤지를 나타냅니다.
Object
 InheritedisPrototypeOf (theClass:Object ):Boolean
Object 클래스의 인스턴스가, Parameters로서 지정된 object의 prototype 체인내에 있을지 어떨지를 나타냅니다.
Object
 InheritedpropertyIsEnumerable (name:String ):Boolean
지정된 property가 존재해, 열거 가능한가 어떤가를 나타냅니다.
Object
 InheritedsetPropertyIsEnumerable (name:String , isEnum:Boolean = true):void
루프 처리에 대한 다이나믹 property의 가용성을 설정합니다.
Object
 InheritedtoString ():String
디폴트에서는 "Error" 라고 하는 string를 돌려줍니다. Error.message property가 정의되고 있는 경우는, 그 값을 돌려줍니다.
Error
 InheritedvalueOf ():Object
지정된 object의 원시적치를 돌려줍니다.
Object
constructor    의 상세
StackOverflowError()constructor   
public 함수 StackOverflowError(message:String = "")

새로운 StackOverflowError object를 작성합니다.

Parameters
message:String (default = "") — 에러 object에 관련지을 수 있었던 string입니다.
Examples

다음의 예에서는, 샘플 StackOverflowErrorExample 클래스를 사용해, 스택의 오버플로우가 생겼을 경우에 생성되는 에러를 나타냅니다. 여기에서는 다음의 순서를 실행합니다.
  1. constructor    이 Methods lockMachine() 를 에러 처리 코드 세그먼트(segment)내에서 호출합니다. 그 code segment는 StackOverflowError object를 캐치 하는 것입니다.
  2. lockMachine() Methods는 스택이 오버플로우 할 때까지 자신을 계속 호출합니다.
  3. StackOverflowError 가 슬로우 되면, constructor    은 그것을 캐치 해, trace 명령문(statement)를 사용해 에러 메세지를 출력합니다.
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();
        }
    }
}






 

코멘트가 추가되었을 경우, 메일로 받기. | 코멘트 리포트

현재의 페이지: http://flexdocs.kr/docs/flex2/langref/flash/errors/StackOverflowError.html