我可以使用Haxe Type类来反映对象的类,例如
getClass<T> (o:T):Class<T>
有没有办法检查给定对象是实现接口还是另一个类的子类?
答案 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;如果第二个参数是对象的类,它的一个父类,或它实现的接口。