·您当前的位置:首页 > 技术教程 > AS2与AS3技术 >

[AS3]错误处理try,catch,finally用法

时间:2014-05-18 17:009ria.com
虽然catch里已经有return方法,但位于return方法后面的finally里的代码依然会被执行.其实无论return方法是在try里,还是catch里,finally里的代码始终会被执行

说明1:

  1. private function tryError():void{ 
  2.     try { 
  3.         trace(”CuPlayer.com提示测试开始-try”); 
  4.         throwError(); 
  5.     }catch(errObject:Error) { 
  6.         trace(”CuPlayer.com提示错误信息:” + errObject.message); 
  7.         trace(”CuPlayer.com提示测试结束-catch”); 
  8.         return; 
  9.     }finally{ 
  10.         trace(”虽然catch里已经有return方法,但位于return方法后面的finally里的代码依然会被执行
    .其实无论return方法是在try里,还是catch里,finally里的代码始终会被执行”); 
  11.     } 
  12.     trace(”前面已经有return了,此处是不会再执行的.除非没有抛出错误,以使catch里的代码没有被执行”); 
  13. private function throwError():void{ 
  14.     throw new Error(”CuPlayer.com提示抛出错误”); 
  15. }  

说明2:

var abc:Sprite=new Sprite()
try{//执行一次程序块
 trace("abc")
}
catch(error:ArgumentError){//如果有ArgumentError类型错误,则运行catch程序块
 trace("ArgumentError Wrong")
}finally{//try catch语句运行结束执行一次。
 trace("ok")
}

/*
1.可以有多个catch
2.finally只能有一个
3.不管try是否错误,finally都会运行一次
4.如果try成功无错运行,则catch不执行

说明3:

  1. var re:URLRequest=new URLRequest("CuPlayer.com.php"); 
  2. var re2:URLRequest=new URLRequest("CuPlayer.net.php"); 
  3. var xmlLoader:URLLoader = new URLLoader(); 
  4. xmlLoader.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); 
  5. xmlLoader.load(re); 
  6. function ioErrorHandler(e:IOErrorEvent) { 
  7.     trace(e.text+"\n"+e.type); 
  8.     xmlLoader.load(re2); 

 

热门文章推荐

请稍候...

保利威视云平台-轻松实现点播直播视频应用

酷播云数据统计分析跨平台播放器