zoukankan      html  css  js  c++  java
  • 在.net中可以借助于多态实现,但AS3中目前尚没有多态,怎么实现?

    在.net中可以借助于多态实现,但AS3中目前尚没有多态,怎么实现?

    sban写了一个例子,用于展示namespace的用法,及多态函数的实现及调用,在这里查看Demo源码

    sban 于北京朝阳门

    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application
    xmlns:mx="http://www.adobe.com/2006/mxml"
    creationComplete="creationCompleteHandler(event)"
    layout="absolute" fontSize="12" width="526" height="169" horizontalAlign="center" verticalAlign="middle" viewSourceURL="srcview/index.html">
    <!--
    Copyright (c) 2007. sban <http://blog.sban.com.cn/>
    All rights reserved.
    About Author
    sban is an software architect focusing on flex/flash and .net,
    who living in Bejing China now.
    you can contact me in the following way:
    MSN/Email: sban#live.cn
    or visit sban blog: http://blog.sban.com.cn/
    SOME LINKS:
    flex5 is a opensource blog basing on flex/flash.
    flex5 Google Group:http://groups.google.com/group/flex5/
    flex5 Code:http://code.google.com/p/flex5/
    fllib is an actionscript library using both in flex and flash:
    fllib Google Group:http://groups.google.com/group/fllib/
    fllib Code:http://code.google.com/p/fllib/
    This Program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.
    This Program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
    -->
    <mx:Script>
    <![CDATA[
    import flash.net.navigateToURL;
    import mx.controls.ComboBox;
    import mx.controls.Alert;
    private var roleDelegate : Namespace;
    namespace userRole = "userNamespace";
    namespace adminRole = "adminNamespace";
    private function creationCompleteHandler(event : Event) : void
    {
    roleDelegate = adminRole;
    }
    userRole function login(event : Event) : void
    {
    Alert.show(&apos;user login.&apos;, &apos;sban blog&apos;);
    }
    adminRole function login(event : Event) : void
    {
    Alert.show(&apos;admin login.&apos;, &apos;sban blog&apos;);
    }
    private function roleSelectChangeHandler( event : Event) : void
    {
    if(ComboBox(event.currentTarget).selectedItem.data == 0)
    {
    roleDelegate = adminRole;
    }else{
    roleDelegate = userRole;
    }
    }
    private function loginHandler(event : Event) : void
    {
                      roleDelegate::login(event);
    }
    ]]>
    </mx:Script>
    <mx:Label text="Select Account Type pls :" x="63" y="74"/>
    <mx:ComboBox change="roleSelectChangeHandler(event)" x="232" y="72">
    <mx:dataProvider>
    <mx:Object label="Administrator" data="0" />
    <mx:Object label="User" data="1" />
    </mx:dataProvider>
    </mx:ComboBox>
    <mx:Button label="Login" click="loginHandler(event)" width="88" x="374" y="72"/>
    <mx:LinkButton x="331" y="139"  label="http://blog.sban.com.cn/" textDecoration="underline"
    useHandCursor="true" buttonMode="true" click="flash.net.navigateToURL(new URLRequest(&apos;http://blog.sban.com.cn/&apos;))"/>
    </mx:Application>
  • 相关阅读:
    创建线程方法
    List 接口
    implements 的用法
    import和export 的使用方法
    js 实现 a == 'juejin' && a == 666 && a == 888
    position的属性运用
    css calc()函数 长度运算
    .net5一分钟入门
    css 如何让大小不同的图片表现一致,同时自适应呢?
    sqlserver isnull(),Count(),sum(),month(getdate()) 的用法
  • 原文地址:https://www.cnblogs.com/jiahuafu/p/1426813.html
Copyright © 2011-2022 走看看