如何在接口中公开方法而不将其公开给所有类

Mim*_*ght 4 oop flash interface actionscript-3

我有一个问题,我正在使用特定的界面做很多事情.但是,我有一个特殊的方法,我希望只能用于特定的一组类(基本上是一个internal方法).

interface IThing {
    function thisMethodIsPublic():void;
    function thisMethodShouldOnlyBeVisibleToCertainClasses():void;
}
Run Code Online (Sandbox Code Playgroud)

问题是,没有办法在界面中添加访问修饰符(即公共,私有,内部) - 至少在ActionScript 3.0中没有.

所以我想知道这里最好的做法是什么?将这个内部方法公开似乎是不好的形式,但我需要它成为接口的一部分,所以我可以保证实现它的类具有这个内部方法.

谢谢你的帮助!

Cra*_*der 12

答:定义两个接口,并将"私有"功能保留在第二个接口中.如果ActionScript支持接口的继承,则将"私有"接口定义为扩展"公共"接口.