如何检查类类型B是否在groovy中扩展类类型A?
class A { } class B extends A { }
解决方法
当右侧参数是一个Class时,Groovy的运算符将测试是一个关系,所以A中的B等价于Java的A.isAssignableFrom(B).这也适用于对象. A中的新C()等同于A的新C()实例.
例
class A {} class B extends A {} class C extends B {} assert C in A // C inherits from A interface I {} interface J extends I{} assert J in I // J extends I class D implements I {} assert D in I // D implements I final o = new C() assert o in A // o is an instance of A