flash - 如何在AS3中定义具有不同参数的接口(interface)方法?

标签 flash actionscript-3 oop interface

我正在尝试定义一个接口(interface),其中一个方法(initPage)需要在每个实现中具有不同的参数。我怎样才能做到这一点?对我来说使用 ...args 不好,因为我失去了强类型检查。

public interface IPage {
    function initPage(...args):void;
    function showPage():void;
    function hidePage():void;
    function removePage():void;
}

最佳答案

您知道您可以实现多个接口(interface)吗?

我认为你应该维护你的实际接口(interface),减去“有问题的”方法,并创建另一个接口(interface),每个接口(interface)都有不同的方法

public interface IPage 
{      
    function showPage():void;
    function hidePage():void;
    function removePage():void;
}

public interface IPrettyPage
{
    function initPage(p:PrettyArg);
}

public interface IUglyPage
{
    function initPage(u:UglyArg);
}


// your implementation Class
package 
{
    public class Page extends Sprite implements IPage, IPrettyPage
    {
        // Implementation
    }
}

无论如何,这是一个有另一个好主意的示例,但是是 Java 代码: http://www.java2s.com/Code/Java/Language-Basics/Implementmultipleinterfaces.htm

我没有测试过,但我几乎可以肯定这个问题在 AS3 中是不同的。

关于flash - 如何在AS3中定义具有不同参数的接口(interface)方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4005918/

相关文章:

java - Selenium ,Java,waitForCondition

java - Java中是否有等效的TweenMax

class - 如何在 VBA 中循环遍历类属性

javascript - OOP ajax 避免代码重复

actionscript-3 - 如何在 Android/Black berry 的 Air 中打开 pdf

在另一个类中发送的 c# 数组发回零

javascript - 下载文件到某个客户端驱动器路径

actionscript-3 - 如何在 Flash Professional 中为 Flash Stage 实例提供唯一属性以传递给 AS3 脚本?

actionscript-3 - 在 Flash AS3 中使用 BlendMode "erase"时的奇怪行为

apache-flex - 在ActionScript和Flex中计算文本宽度