| 런타임 버전: | AIR 1.0 Flash Player 9 |
Error 클래스에는 스크립트에서 발생한 오류에 대한 정보가 들어 있습니다. ActionScript 3.0 응용 프로그램을 개발할 때 디버거 버전의 Flash Player에서 컴파일된 코드를 실행하면 Error 유형 또는 하위 클래스 유형의 예외가 대화 상자에 표시되며 이를 통해 코드 문제를 쉽게 해결할 수 있습니다. Error 객체를 만들려면
Error 생성자 함수를 사용합니다. 일반적으로는
try 코드 블록 내에서
catch 또는
finally 코드 블록에서 catch되는 새 Error 객체를 throw합니다.
Error 클래스의 하위 클래스를 만들고 해당 하위 클래스의 인스턴스를 throw할 수도 있습니다.
예제 보기
errorID:int [읽기 전용]
| 런타임 버전: | AIR 1.0 Flash Player 9 |
특정 오류 메시지와 연관된 참조 번호가 포함되어 있습니다. 사용자 정의 Error 객체의 경우 이 번호는 생성자에 지정된 id 매개 변수의 값입니다.
구현 public function get errorID():intpublic var message:String| 런타임 버전: | AIR 1.0 Flash Player 9 |
Error 객체에 연결된 메시지가 들어 있습니다. 기본적으로 이 속성의 값은 "Error"입니다. Error 객체를 만들 때 Error 생성자 함수에 오류 문자열을 전달하여 message 속성을 지정할 수 있습니다.
참고 사항
public var name:String| 런타임 버전: | AIR 1.0 Flash Player 9 |
Error 객체의 이름이 들어 있습니다. 기본적으로 이 속성의 값은 "Error"입니다.
참고 사항
public function Error(message:String = "", id:int = 0)| 런타임 버전: | AIR 1.0 Flash Player 9 |
새 Error 객체를 만듭니다. message를 지정하면 해당 값이 객체의 Error.message 속성에 할당됩니다.
매개 변수 | message:String (default = "") — Error 객체에 연결된 문자열이며, 이 매개 변수는 선택 요소입니다. |
| |
| id:int (default = 0) — 지정된 오류 메시지에 연결할 참조 번호입니다. |
참고 사항
예제
다음 예제에서는 새 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
public function getStackTrace():String| 런타임 버전: | AIR 1.0 Flash Player 9 |
오류 발생 시에서 오류 호출의 스택을 문자열로 반환합니다(Flash Player의 디버거 버전 및 ADL(AIR Debug Launcher)만 해당). 즉, Flash Player의 디버거 버전 또는 ADL을 사용하지 않으면 null을 반환합니다. 아래 예제에서 알 수 있듯이 반환값의 첫 번째 줄은 예외 객체의 문자열 표현이며 그 뒤로 스택 추적 요소가 이어집니다.
TypeError: null cannot be converted to an object
at com.xyz.OrderEntry.retrieveData(OrderEntry.as:995)
at com.xyz.OrderEntry.init(OrderEntry.as:200)
at com.xyz.OrderEntry.$construct(OrderEntry.as:148)
반환값override public function toString():String| 런타임 버전: | AIR 1.0 Flash Player 9 |
기본적으로 "Error"라는 문자열을 반환하며, Error.message 속성이 정의되어 있는 경우에는 여기에 포함된 값을 반환합니다.
반환값참고 사항
예제
다음 예제에서는 새 Error 객체
err을 만든 다음
Error() 생성자를 사용하여
"New Error Message"라는 문자열을
err에 할당합니다. 마지막으로,
message 속성을
"Another New Error Message"로 설정하여
"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 클래스를 사용하여 사용자 정의 오류를 발생시키는 방법을 보여 줍니다. 이는 다음 단계로 이루어집니다.
-
Array 유형의 로컬 변수
nullArray를 선언합니다. 이때 새 Array 객체가 만들어지는 것은 아닙니다.
-
생성자에서 초기화되지 않은 배열로 값을 로드하려고 시도합니다. 이때 오류 처리 코드 세그먼트 내에서
push() 메서드를 사용하며, 이 오류 처리 코드는 Error를 확장하는 CustomError 클래스를 사용하여 사용자 지정 오류를 catch합니다.
-
CustomError가 throw되면 생성자는 이를 catch한 다음
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);
}
}
© 2004-2008 Adobe Systems Incorporated. All rights reserved.
Thu Jan 8 2009, 02:16 AM -08:00