apache-flex AS 3/Flex:接口扩展接口

huus2vyu  于 2022-11-01  发布在  Apache
关注(0)|答案(3)|浏览(151)

在AS 3/Flex中,一个接口是否可以扩展另一个接口?
我已经创建了接口A。现在,我想创建另一个接口B来扩展接口A。
我谷歌了很多,但找不到任何令人信服的答案。请帮助。

wgmfuz8q

wgmfuz8q1#

当然,您可以扩展interface
多个接口可以由另一个接口通过extends子句继承,也可以由一个类通过implements子句继承。实现接口的类的示例的长度必须等于该接口所表示的类型。接口定义必须只包含函数定义,而函数定义可以包括get与set方法。
请记住:有时候,直接试用或查看Flex SDK源代码会更快。- )
${FLEX_HOME}\frameworks\projects\framework\src\mx\core\IUIComponent.as

package mx.core
{ 
...
public interface IUIComponent extends IFlexDisplayObject
{
...
hgncfbus

hgncfbus2#

在我的注解中,我说接口没有扩展;接口应该是由类使用implement关键字实现的。当你想用一个接口'扩展'多个接口时,只需要使用extends关键字并用逗号分隔它们。
以这个界面IMyFirstInterface为例:

public interface IMyFirstInterface {
 // method definitions here
}

然后取另一个接口IMySecondInterface:

public interface IMySecondInterface {
 // method definitions here
}

这两个接口都是“独立”的,意味着它们与另一个接口没有任何关系。但是,第三个接口可以扩展这两个接口,如下所示:

public interface IMyThirdInterface extends IMyFirstInterface, IMySecondInterface{
 // method definitions here
}

您的类将实现该接口,如下所示:

public class myClass implements IMyThirdInterface{
 // other class stuff
}

myClass必须包含在iMyThirdInterface、IMyFirstInterface和iMySecondInterface中定义的所有方法,因为它会实作IMyThirdInterface,而IMyThirdInterface会扩充IMyFirstInterface和IMySecondInterface。
从我的头顶;我不知道“冲突”是如何处理的。如果IMyFirstInterface和IMySecondInterface用不同的签名实现了相同的方法,我会预料到编译器错误。

zkure5ic

zkure5ic3#

接口可以扩展其他接口。类可以扩展类。看到这里的相关性了吗?就像乐高积木一样。
接口实现类。类实现接口。现在应该有意义了。

相关问题