AS2的异常处理 |
| 作者:佚名 来源:闪吧 作者: thymecd 更新:2007-1-13 20:48:59 错误报告 我要投稿 |
AS2.0增强了异常处理功能,本文通过一个例子了解一下异常机制是如何动作的 文件如下: Exception.as
class Exception extends Error { public var type:String = "Exception"; } ChildException.as
class ChildException extends Exception { public var type:String = "ChildException"; } ExceptionTest.as
class ExceptionTest { function ExceptionTest() { try { throwsException(); throwsChildException(); } catch (e:ChildException) { trace("ChildException thrown! ("+e.type+")"); } catch (e:Exception) { trace("Exception thrown! ("+e.type+")"); } finally { trace("Finally done."); } } private function throwsException(Void):Void { trace("throwsException()"); throw new Exception(); } private function throwsChildException(Void):Void { trace("throwsChildException()"); throw new ChildException(); } } .fla文件:
var t = new ExceptionTest(); 测试,输出:
throwsException() Exception thrown! (Exception) Finally done. 只输出了由throwsException()抛出的异常,因为在try中抛出异常后立即转到catch,然后到finally结束。 如果注释掉throwsException(),将由throwsChildException()抛出异常,输出如下:
throwsChildException() ChildException thrown! (ChildException) Finally done. 点击浏览该文件
|
|
| 文章录入:skyuu 责任编辑:skyuu |
|
| 【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |