首页 > 编程语言 > 详细

Java8基础知识(七)断言

时间:2020-03-30 15:21:42      阅读:65      评论:0      收藏:0      [点我收藏+]

断言

当程序中使用大量的异常抛出来检查变量的值是否符合规定时,检测所使用的代码会保留在程序中,积累这些测试代码会导致程序越来越慢。

断言机制可以在测试期间向代码中插入检查语句,当代码发布时,这些语句能够自动被移走。

断言的语法形式如下:

// 当条件不成立时抛出AssertionError异常
assert condition;
// 当条件不成立时将表达式传入AssertionError构造器,转换成消息字符串,然后抛出异常
assert condition : expression;

启用和禁用断言

启用或禁用断言时类加载器的功能,不需要重新编译程序,在运行程序时设置选项即可。

java -enableassertions MyApp

当断言被禁用时,类加载器会跳过断言代码,为程序运行节省时间。

也可以在类甚至包中使用断言。

java -ea:MyClass -ea:com.mycompany.mylib... MyApp

也可以选择禁用某个特定类和包的断言。

java -ea:... -da:MyClass MyApp

对于没有类加载器的系统类,使用-enablesystemassertions-esa开关启用断言。

参数检查

对于文档中不抛出异常的参数约定,应当使用断言来判断其符合条件,这种约定称为前置条件

文档假设

如果使用注释来说明假设的前置条件,应当用断言来代替。这样当违反假设时可以直接抛出异常。

Java8基础知识(七)断言

原文:https://www.cnblogs.com/aries99c/p/12598081.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!