⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 securityerrorexample.as

📁 《Flash AS3殿堂之路》光盘源码 学习ActionScript 3.0
💻 AS
字号:
package org.kingda.book.error
{
	import flash.display.Sprite;
	import flash.net.Socket;

	public class SecurityErrorExample extends Sprite
	{
		var socket:Socket;
		
		public function SecurityErrorExample() {
			socket = new Socket();
			
			var targetServer:String = "www.kingda.org";
            var port:uint = 66666;
                        
            try {                
              	  connectMethodA(targetServer, port);
            }
            catch(e:CustomBError) {
            	trace (e);
            }
            catch(e:CustomAError) {
            	trace ("抓到A了:"+ e +"\t出错端口号:" + e.getPort());
            	//输出:抓到A了:SecurityError	出错端口号:66666
            }
            catch(e:SecurityError) {
                trace(e);
            }
        }
        
        private function connectMethodA(host:String, portNum:int):void {
        	//...A方法的其他代码....
        	try {
        		socket.connect(host, portNum);
        	} catch (e:SecurityError) {
        		var customAErr:CustomAError = new CustomAError();
        		customAErr.record(host, portNum);
        		throw customAErr;
        	}
        }
        
        private function connectMethodB(host:String, portNum:int):void {
        	//...B方法的其他代码....
        	try {
        		socket.connect(host, portNum);
        	} catch (e:SecurityError) {
        		throw new CustomBError();
        	}
        }
        		
	}
}
class CustomAError extends SecurityError {
	//...CustomAError的一些代码....
	private var infoForA:Object = new Object();
	public function record (host:String, portNum:int):void {
		infoForA.host = host;
		infoForA.port = portNum;
		//...其他代码....
	}
	public function getPort():int {
		return infoForA.port;
	}
}
class CustomBError extends SecurityError {
	//...CustomBError的代码...
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -