我在 ActionScript 3 中有两个类型定义(Class 类型的引用),我需要确定其中一个是否是另一个的基类型(类或接口)。
我本来希望像下面这样的东西会起作用,但遗憾的是它没有:
var isBaseClass:Boolean = MouseEvent is Event;
可以理解为什么没有,但它仍然很好。我也不能使用describeType,因为对于Class类型的对象,它实际上并不返回正确的继承链,而只是返回Class和Object类型,这根本没有帮助。我can在循环中使用 getQualifiedSuperClassName 直到不再有超类或存在匹配项,但它不太理想,并且不适用于针对接口进行类型检查。
有人有更好的主意吗?
这是一个使用describeType 没有问题的实例:http://wonderfl.net/c/h90R http://wonderfl.net/c/h90R
trace(describeType(MouseEvent)..extendsClass)
output :
<extendsClass type="Class"/>
<extendsClass type="Object"/>
<extendsClass type="flash.events::Event"/>
<extendsClass type="Object"/>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)