Haxe反射 - 子类和接口

时间:2015-07-04 17:58:36

标签: inheritance reflection types haxe

我可以使用Haxe Type类来反映对象的类,例如

getClass<T> (o:T):Class<T>

有没有办法检查给定对象是实现接口还是另一个类的子类?

1 个答案:

答案 0 :(得分:7)

您可以使用Std.is

class Subclass extends OriginalClass implements IMyInterface {}

var myObj = new Subclass();

var isClass = Std.is(myObj, OriginalClass);      // returns true
var isSubclass = Std.is(myObj, Subclass);        // also returns true
var isInterface = Std.is(myObj, IMyInterface);   // also returns true

将返回&#34; true&#34;如果第二个参数是对象的类,它的一个父类,或它实现的接口。