interfaceconversiontest.groovy
来自「Groovy动态语言 运行在JVM中的动态语言 可以方便的处理业务逻辑变化大的业」· GROOVY 代码 · 共 26 行
GROOVY
26 行
class InterfaceConversionTest extends GroovyTestCase {
void testClosureConversion(){
def c1 = {Object[] args -> args?.length}
def c2 = c1 as InterfaceConversionTestFoo
assert !(c1 instanceof InterfaceConversionTestFoo)
assert c2 instanceof InterfaceConversionTestFoo
assert c2.a() == null
assert c2.b(null) == 1
}
void testMapConversion() {
def m1 = [a:{1}, b:{2}]
def m2 = m1 as InterfaceConversionTestFoo
assert !(m1 instanceof InterfaceConversionTestFoo)
assert m2 instanceof InterfaceConversionTestFoo
assert m2.a() == 1
assert m2.b(null) == 2
}
}
interface InterfaceConversionTestFoo {
def a();
def b(Integer i);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?