栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

“ assert”关键字有什么作用?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

“ assert”关键字有什么作用?

如果使用

-enableassertions
(或-ea简称)启动程序,则此语句

assert cond;

相当于

if (!cond)    throw new AssertionError();

如果不使用此选项启动程序,则assert语句将无效。

例如,

assert d >= 0 && d <= s.length()
;在你的问题中发布的,等同于

if (!(d >= 0 && d <= s.length()))    throw new AssertionError();

(如果你启动的

-enableassertions
是。)

Java语言规范assert正式为:14.10。该声明说:

14.10。的

assert
声明
的断言是一个
assert
含有一个布尔表达式语句。断言是启用还是禁用。如果启用了断言,则断言的执行将导致对布尔表达式进行求值,并且如果表达式的求值为,则会报告错误false。如果断言被禁用,则断言的执行不起作用。

当“启用或禁用”控制与

-ea
开关和“报告错误”意味着
AssertionError
被抛出。

最后,一个鲜为人知的功能assert:
你可以:

"Error message"
像这样追加:

assert d != null : "d is null";

指定应该抛出什么AssertionError的错误消息。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/447082.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号