加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Flex 中将方法作为方法的参数

发布时间:2020-12-15 04:39:44 所属栏目:百科 来源:网络整理
导读://和C/C++的函数指针一样(函数回调),或者上升到object-c中的委托,Java中接口(面向接口的编程思想) //在Flex或Actionscript中的控件事件监听,都是函数回调或函数指针的应用,举一反三,思想是一致的 //其中的一个类 ?? ???? private var _request:IReq

//和C/C++的函数指针一样(函数回调),或者上升到object-c中的委托,Java中接口(面向接口的编程思想)

//在Flex或Actionscript中的控件事件监听,都是函数回调或函数指针的应用,举一反三,思想是一致的

//其中的一个类

?? ???? private var _request:IRequestProxy;//一个接口
?? ??? ?private var _handler:Function;
?? ??? ?private var _capabilities:IMapServerCapabilities;//一个接口


?? ???? public function set request(request:IRequestProxy):void{
?? ??? ??? ?this._request = request;
?? ??? ??? ?_request.resultHandle = resultHandle;
?? ??? ??? ?_request.faultHandle = faultHandle;
?? ??? ?}
?? ??? ?private function resultHandle(data:Object):void{
?? ??? ??? ?var capabilities:IMapServerCapabilities = new MapServerRestCapabilities(data,_request.url);
?? ??? ??? ?this._capabilities = capabilities;
?? ??? ??? ?if(_handler)

? ? ? ? ? ? //在此执行作为传入的实参的方法?

??? ??? ???? _handler(capabilities);
?? ??? ?}

?? ???? private function faultHandle(info:Object):void{
?? ??? ??? ?Alert.show(info.toString());
?? ??? ?}

?? ???? public function loadCapabilities(handler:Function = null):void{
?? ??? ??? ?this._handler = handler;
?? ??? ??? ?_request.request(HTTPRequestMessage.GET_METHOD);
?? ??? ?}

//在另一个类中

??????? public var baseMapServerProxy:IMapServerProxy;

??????? //此方法 的参数会在调用此方法中赋值

?? ???? private function baseMapServerLoadedHandle(capabilities:IMapServerCapabilities):void{
?? ??? ???? //执行代码
?? ???? }


?????? baseMapServerProxy.loadCapabilities(baseMapServerLoadedHandle);//以方法名最为参数。此处没有参数,参数在调用此方法的方法中指定

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读