iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >java的assert是什么
  • 407
分享到

java的assert是什么

2023-06-19 12:06:43 407人浏览 薄情痞子
摘要

这篇文章主要讲解了“java的assert是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“java的assert是什么”吧! 01、assert是个啥?断言是为了方便调试程序,

这篇文章主要讲解了“java的assert是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“java的assert是什么”吧!

 01、assert是个啥?

断言是为了方便调试程序,并不是发布程序的组成部分。理解这一点是很关键的。

在C和c++语言中都有assert关键字,表示断言。

java也不例外,在Java SE 1.4版本以后也增加了断言的特性。

默认情况下,JVM是关闭断言的。因此如果想使用断言调试程序,需要手动打开断言功能。

在命令行模式下运行Java程序时可增加参数-enableassertions或者-ea打开断言。

也可通过-disableassertions或者-da关闭断言(默认情况,可有可无)。

02、断言使用

断言是通过关键字assert来定义的,一般的,它有两种形式。

1   assert <boolean表达式>

如果boolean表达式为true,则程序继续执行。如果为false,则程序抛出AssertionError,并终止执行。

例如:

public class AssertTest {   public static void main(String[] args) {    boolean isOk = false;    assert isOk;    System.out.println("断言通过!");  }}

直接运行,是直接通过的,因为JVM是关闭断言的!

但是,我们可以通过命令模式运行,带参数 -ea!

java -ea AssertTest

比如Eclipse,可这样设置: Run as -> Run Configurations -> Arguments -> VM arguments:敲入-ea即可。

java的assert是什么

运行结果:

java的assert是什么

 2.2、 assert <boolean表达式> : <错误信息表达式>

如果boolean表达式为true,则程序继续执行。如果为false,则程序抛出java.lang.AssertionError,并输入错误信息表达式。

例如:

public class AssertTest2 {     public static void main(String[] args) {    boolean isOk = false;    assert isOk : "不通过!";    System.out.println("断言通过!");  }}

同样,我们可以通过命令模式运行,带参数 -ea!

在 eclipse 里面配置好参数,运行结果:

java的assert是什么

03、陷阱

有的同学,可能觉得`assert`类似`if`判断,所以呢,就可以在代码中使用!

比如考虑下面这个简单的例子:

public class AssertTest2 {     public static void main(String[] args) {    int[] is = {1};    assert(is.length > 0);    System.out.println(is[1]);  }}

该句 assert(is.length > 0) 和 if(is.length >0) 意思相近,jvm一般线上都不会开启断言,如果在发布程序的时候,该句会被忽视,因此会导致以下错误,数组越界:

java的assert是什么

感谢各位的阅读,以上就是“java的assert是什么”的内容了,经过本文的学习后,相信大家对java的assert是什么这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: java的assert是什么

本文链接: https://www.lsjlt.com/news/296194.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • java的assert是什么
    这篇文章主要讲解了“java的assert是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“java的assert是什么”吧! 01、assert是个啥?断言是为了方便调试程序,...
    99+
    2023-06-19
  • java中assert的作用是什么
    Java中的assert是一种断言机制,用于在程序中检查和验证假设条件。它的作用是为了确保程序的正确性,在开发和调试阶段可以使用as...
    99+
    2023-09-28
    java
  • python assert函数的用法是什么
    assert函数是Python中的一个断言函数,用于在代码中进行条件判断,一般用于程序开发和调试阶段。assert语句的用法如下:`...
    99+
    2023-09-11
    python
  • c语言assert函数的作用是什么
    assert函数是C语言标准库中的一种调试工具,其作用是在程序运行时检查某个条件是否为真,如果条件为假,则终止程序运行并输出错误信息...
    99+
    2023-05-25
    c语言assert函数 c语言
  • assert在C语言中的作用是什么
    在C语言中,assert的作用是用于在程序中验证假设条件的正确性。它用于检查断言是否为真,如果断言为假,则会导致程序终止,并输出相应...
    99+
    2023-09-20
    assert C语言
  • 在Python中使用assert的作用是什么
    这篇文章主要介绍在Python中使用assert的作用是什么,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!python的数据类型有哪些python的数据类型:1. 数字类型,包括int(整型)、long(长整型)和f...
    99+
    2023-06-02
  • java断言assert怎么使用
    Java中的断言(assert)是一种用于在程序中进行自我验证的语句。它用于在程序中检查代码是否满足某些条件,如果条件不满足,则会抛...
    99+
    2023-09-23
    java assert
  • C语言assert断言函数的作用是什么
    C语言中的assert断言函数主要用于在代码中插入一些检查点,用于检查某个条件是否为真。如果条件为真,那么断言通过,程序继续执行。如...
    99+
    2023-09-11
    C语言
  • Java 断言 assert 你真的会用嘛?
    Java assert 断言机制是 Java 5 中推出的新特性,它主要用于在程序运行时检查状态或假设的正确性,并在不正确时抛出 AssertionError 异常。使用 assert 断言可以使代码更加健壮、可靠,提高程序的可维护性和可读...
    99+
    2023-09-06
    java jvm 开发语言
  • C语言断言函数assert()的使用方法是什么
    本篇内容介绍了“C语言断言函数assert()的使用方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!  在C语言库函数中提供了一个辅...
    99+
    2023-06-25
  • python中的assert语句怎么用
    今天小编给大家分享一下python中的assert语句怎么用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。python断言a...
    99+
    2023-06-30
  • C语言中的assert怎么使用
    在C语言中,`assert`是一个宏,用于在程序中插入断言语句,用于检查程序中的特定条件是否满足。如果断言条件为真,则程序继续执行;...
    99+
    2023-08-12
    C语言 assert
  • Python中的Assert语句怎么使用
    这篇文章主要介绍了Python中的Assert语句怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python中的Assert语句怎么使用文章都会有所收获,下面我们一起来...
    99+
    2022-10-19
  • java是做什么的
    java是做什么的?java就是计算机编程语言Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言...
    99+
    2017-03-06
    java入门 java
  • java的gc是什么
    一个优秀的Java程序员必须了解GC的工作原理、如何优化GC的性能、如何与GC进行有限的交互,有一些应用程序对性能要求较高,例如嵌入式系统、实时系统等,只有全面提升内存的管理效率,才能提高整个应用程序的性能。本文将从GC的工作原理、GC的几...
    99+
    2018-07-11
    java入门 java
  • java的map是什么?
    Map提供的是一种双列映射的存储集合,它能够提供一对一的数据处理能力,双列中的第一列我们称为key,第二列就是value,一个key只能够在一个Map中出现最多一次,通过一个key能够获取Map中唯一一个与之对应的value值,正是它的这种...
    99+
    2016-12-12
    java
  • Java的NIO是什么
    Java提供了一个叫作NIO(New I/O)的第二个I/O系统,NIO提供了与标准I/O API不同的I/O处理方式。它是Java用来替代传统I/O API(自Java 1.4以来)。 (推荐学习:java课程)它支持...
    99+
    2018-06-12
    java教程 Java
  • java的包是什么
    包是类的容器,用于分隔类名空间。如果没有指定包名,所有的示例都属于一个默认的无名包。Java中的包一般均包含相关的类,例如,所有关于交通工具的类都可以放到名为Transportation的包中。包有什么用途? (推荐学...
    99+
    2019-09-17
    java入门 java
  • java的sdk是什么
    SDK是Software Development Kit的缩写,中文意思是“软件开发工具包”。这是一个覆盖面相当广泛的名词,可以这么说:辅助开发某一类软件的相关文档、范例和工具的集合都可以叫做“SDK”。SDK是一系列文件的组合,它为软件的...
    99+
    2017-08-31
    java教程 java sdk
  • java是干什么的
    Java是一门面向对象编程语言,它是静态面向对象编程语言的代表,具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程,可用于编写桌面应用程...
    99+
    2022-10-16
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作