我不明白 assert 语句是如何停止程序的?是抛出异常还是别的什么?如果它引发异常,我可以通过以下方式捕获此异常:
try {
assert result != null;
} catch (Exception ex) {
//some code
}
我不明白 assert 语句是如何停止程序的?是抛出异常还是别的什么?如果它引发异常,我可以通过以下方式捕获此异常:
try {
assert result != null;
} catch (Exception ex) {
//some code
}
我不明白 assert 语句是如何停止程序的?
编码
assert test;
和
if (!$disabledAssertions && test) throw new AssertionError();
可以捕获任何异常或错误,但这并不是一个好主意。
错误不是异常,因此catch(Exception)
不会捕获它。
它抛出AssertionError
。详细信息在JLS §14.10 The assert Statement中有详细说明。
请注意,可以禁用断言,在这种情况下assert
是无操作的。