JAVA IDEA 打开assert 设置方式

 更新时间:2022年11月15日 10:47:49   作者:柠心语冰  
这篇文章主要介绍了JAVA IDEA 打开assert 设置方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

JAVA IDEA 打开assert 设置

概念

(此处为借鉴前辈们的讲解)

断言(Assertion)是Java中一条语句,包含一个布尔表达式,当该布尔值为真,程序则被认为是正确的;当布尔值为假,则系统会抛出错误。

断言两种语句形式

(此处依旧为借鉴前辈们的讲解)

assert	Expression1 ;
assert	Expression1 : Expression2 ;`
  • Expression1是一个布尔表达式,作为断言的真假。
  • Expression2是一个有返回值的表达式,用来提供详细的错误信息。

当没有Expression2时,默认抛出没有详细信息的 AssertionError。

JAVA 中的 assert(idea)

在写assert语句以后运行的时候发现并没有按预期的“报错”,多半是因为没有打开idea中的assert

关于怎么打开其实很简单:Run—> Edit Configurations —>AsserTest —>VM options —>输入“-ea”就可以了。

但是!

我在打开我的Edit Configurations时。。。并没有“AsserTest”。于是再迷茫了一秒钟后,我自己创建了“AsserTest”,并成功找到“ADD VM options”,然后再弹出的对应个位置输入了“-ea”

然后就可以正常运行Asser了。

这是相关语句以及最后报错的输出:

(解释一下 “isUp(a)” 是我自己写的小函数,此时返回值为 false)

assert isUp( a ) : "is not up!!" ;

JAVA 关键字 assert

为什么assert 两个完全不相等的对象或者基本类型却不报错,例如图下

assert new Object() == new Object();
assert 1 == 2;

预期的会报错,结果是没有任何反应

究其原因其实是jvm 启动未添加 -ea 参数用来开启断言 一般来说,通过IDE开发工具(IDEA)在执行测试方式时会主动打开 -ea

java -ea ...省略... -<className>

但如果没有使用这些工具将面临比较尴尬的困境, 而且问题比较隐蔽不容易察觉 所以建议避免使用assert执行测试方法,改用Junit Assertions.assert*()执行测试方法

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 详解Java的Spring框架中bean的定义以及生命周期

    详解Java的Spring框架中bean的定义以及生命周期

    这篇文章主要介绍了Java的Spring框架中bean的定义以及生命周期,bean的实例化是Java web开发中的重要基础,需要的朋友可以参考下
    2015-12-12
  • Java使用Google Zxing生成二维码的例子

    Java使用Google Zxing生成二维码的例子

    本篇文章主要介绍了Java使用Google Zxing生成二维码的例子。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03
  • java数学归纳法非递归求斐波那契数列的方法

    java数学归纳法非递归求斐波那契数列的方法

    这篇文章主要介绍了java数学归纳法非递归求斐波那契数列的方法,涉及java非递归算法的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • Maven Repository仓库的具体使用

    Maven Repository仓库的具体使用

    本文主要介绍了Maven Repository仓库的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-05-05
  • Java程序开发环境配置图文教程

    Java程序开发环境配置图文教程

    这篇文章主要为大家详细介绍了Java程序开发环境配置图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-07-07
  • springboot实现分页功能的完整代码

    springboot实现分页功能的完整代码

    Spring Boot是一个快速开发框架,它提供了很多便捷的功能,其中包括分页查询,下面这篇文章主要给大家介绍了关于springboot实现分页功能的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-04-04
  • Java1.8中LocalDate方法使用总结

    Java1.8中LocalDate方法使用总结

    LocalDate是Java8中的一个日期类,用于表示年月日,它是不可变的,线程安全的,下面这篇文章主要给大家介绍了关于Java1.8中LocalDate方法使用的相关资料,需要的朋友可以参考下
    2024-03-03
  • 详解Java实现负载均衡的几种算法代码

    详解Java实现负载均衡的几种算法代码

    本篇文章主要介绍了详解Java实现负载均衡的几种算法代码 ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • java实现上传文件到服务器和客户端

    java实现上传文件到服务器和客户端

    这篇文章主要为大家详细介绍了java实现上传文件到服务器和客户端,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-01-01
  • spring+netty服务器搭建的方法

    spring+netty服务器搭建的方法

    本篇文章主要介绍了spring+netty服务器搭建的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-01-01

最新评论