Search Flex Samples

flex Creating custom error classes

You can extend one of the standard Error classes to create your own specialized error classes in ActionScript. There are a number of reasons to create your own error classes:

  • To identify specific errors or groups of errors that are unique to your application.

    For example, you may want to take different actions for errors thrown by your own code, in addition to those trapped by Flash Player or Adobe AIR. You can create a subclass of the Error class to track the new error data type in try..catch blocks.

  • To provide unique error display capabilities for errors generated by your application.

    For example, you can create a new toString() method that formats your error messages in a certain way. You can also define a lookupErrorString() method that takes an error code and retrieves the proper message based on the user's language preference.

A specialized error class must extend the core ActionScript Error class. Here is an example of a specialized AppError class that extends the Error class:

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

The following shows an example of using AppError in your project:

try
{
throw new AppError("Encountered Custom AppError", 29);
}
catch (error:AppError)
{
trace(error.errorID + ": " + error.message)
}

Note: If you want to override the Error.toString() method in your subclass, you need to give it one ...(rest) parameter. The ECMAScript (ECMA-262) edition 3 language specification defines the Error.toString() method that way, and ActionScript 3.0 defines it the same way for backward compatibility with that specification. Therefore, when you override the Error.toString() method, you must match the parameters exactly. You will not want to pass any parameters to your toString() method at run time, because those parameters are ignored.

0 comments:

Related Flex Samples

Learn Flex: Flex Samples | Flex Video Tutorials Flex Examples