assert在Java与groovy中的区别
Posted Alighieri
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了assert在Java与groovy中的区别相关的知识,希望对你有一定的参考价值。
断言是用于验证假设条件是否为真,在Groovy的断言中,如果假设的条件不为真,那么就会抛出java.lang.AssertionError异常。使用Groovy表达式来测试假设条件。
如
assert 1==2 : "One isn\'t Two"
会抛出异常:
Exception thrown java.lang.AssertionError: One isn\'t Two. Expression: (1 == 2) at ConsoleScript19.run(ConsoleScript19:1)
Java的断言也是这么写的:
assert 1==2 : "One isn\'t Two";
可见,Groovy的断言语法与Java的断言相同,Groovy的断言可以省略分号。
断言的使用技巧:
当你使用断言时,你应用包含一条消息。此消息可以帮助其他人维护和理解你的代码,理清你的意图。
2. 强断言
Groovy的断言assert关键字仅仅是检查表达式是否为真。如果为假,断言仅仅告诉开发者,表达式不成立,以及表达式使用的变量值,除此以外什么都没有。如果使用强断言,断言的输出会提供表达式的每一个子表达式的可视化展现。下面我将详细说明强断言。
assert new File(\'HelloWorld.txt\')==new File(\'Hello.txt\')
断言可以方便地对代码进行测试。
以上是关于assert在Java与groovy中的区别的主要内容,如果未能解决你的问题,请参考以下文章
groovy 中的闭包与 java 8 中的闭包(lambda 表达式)?
Groovy闭包 Closure ( 闭包中调用 Groovy 脚本中的方法 | owner 与 delegate 区别 | 闭包中调用对象中的方法 )