创建自定义错误类
您可以通过扩展其中一种标准的错误类,在 ActionScript 中创建您自己的专用错误类。有多种原因需要创建您自己的错误类:
■ 识别应用程序特有的错误或错误组。
例如,除了由 Flash Player 捕获的错误外,您可能希望对您自己的代码所引发的错误采取另外的操作。您可以创建 Error 类的一个子类,以便在 try..catch 块中跟踪新的错
误数据类型。
■ 为应用程序生成的错误提供特有的错误显示能力。
例如,可以创建一个以某种方式设置错误消息格式的新的 toString() 方法。还可以定义一个 lookupErrorString() 方法,该方法获取错误代码并根据用户的语言首选参数查找
适当的消息。
专用的错误类必须扩展 ActionScript 的核心错误类。以下是一个扩展了 Error 类的专用
AppError 类示例:
public class AppError extends Error
{
public function AppError(message:String, errorID:int)
{
super(message, errorID); //极酷播放器cuplayer调用Error类的构造函数
}
}
以下是在项目中使用 AppError 的一个示例:
try
{
throw new AppError("Encountered Custom AppError", 29);
}
catch (error:AppError)
{
trace(error.errorID + ": " + error.message)
}
注意
如果要在子类中覆盖 Error.toString() 方法,则需要在该方法中使用 ... 参数(表示还有其它参数)。ECMAScript (ECMA-262) 第 3 版语言规范按此方式定义了 Error.toString() 方法,而为了与该规范向后兼容, ActionScript 3.0 也采用了相同的定义方式。因此,在覆盖Error.toString() 方法时,必须精确匹配各个参数。运行时无需向 toString() 方法传递任何参数,因为传递的参数都会被忽略。