【问题标题】:Make an AS3/Flex class Extendable but not Instantiatable as an object?使 AS3/Flex 类可扩展但不能作为对象实例化?
【发布时间】:2011-02-04 15:37:06
【问题描述】:

我有一个实现接口的类SuperClass,并实现了接口的所有公共方法。我有另一个类SubClass 扩展SuperClass。我不希望那些公共方法被错误地使用。这引出了我的问题:

如何防止SuperClass 被实例化为对象?

布赖恩

更新:使用下面答案中的提示,解决方案是:

public function MyClass():void
{           
     if(getQualifiedClassName(this) == "ui.controls::MyClass")
     {
         throw new Error('MyClass is an abstract class, do ' +
                                    'not instantiate');
     }           

}

【问题讨论】:

    标签: apache-flex actionscript-3


    【解决方案1】:

    AS3 不支持抽象类。你能做的最好的就是运行时强制。查看this post 了解更多信息。

    【讨论】:

    • 抽象类,这是我在搜索中遗漏的关键词——在 Flex 上学了两年,我让我的 java 滑倒了:)
    猜你喜欢
    • 1970-01-01
    • 2015-02-01
    • 2012-10-08
    • 1970-01-01
    • 1970-01-01
    • 2012-07-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多