zoukankan      html  css  js  c++  java
  • AJPFX解析Java关键字之assert

    Java有许多关键字,但是这个关键字估计很少有人了解,今天就跟大家谈一谈这个关键字吧。

    先说明一下,这个关键字开发中用的极少,感兴趣的朋友可以了解一下。

    一、概述

    在C和C++语言中都有assert关键,表示断言。
    在Java中,同样也有assert关键字,表示断言,用法和含义都差不多。

    二、语法

    在Java中,assert关键字是从JAVA SE 1.4 引入的,为了避免和老版本的Java代码中使用了assert关键字导致错误,Java在执行的时候默认是不启动断言检查的(这个时候,所有的断言语句都将忽略!),如果要开启断言检查,则需要用开关-enableassertions或-ea来开启。

    assert关键字语法很简单,有两种用法:

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

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

    三、应用实例

    下面给出一个例子,通过例子说明其用法:

    public class AssertFoo {
        public static void main(String args[]) {
            //断言1结果为true,则继续往下执行
            assert true;
            System.out.println("断言1没有问题,Go!");

            System.out.println(" ----------------- ");

            //断言2结果为false,程序终止
            assert false : "断言失败,此表达式的信息将会在抛出异常的时候输出!";
            System.out.println("断言2没有问题,Go!");
        }
    }

    保存代码到C:AssertFoo.java,然后按照下面的方式执行,查看控制台输出结果:

    1、编译程序:
    C:>javac AssertFoo.java

    2、默认执行程序,没有开启-ea开关:
    C:>java AssertFoo
    断言1没有问题,Go!

    -----------------

    断言2没有问题,Go!

    3、开启-ea开关,执行程序:
    C:>java -ea AssertFoo
    断言1没有问题,Go!

    -----------------

    Exception in thread "main" java.lang.AssertionError: 断言失败,此表达式的信息将
    会在抛出异常的时候输出!
            at AssertFoo.main(AssertFoo.java:10)

    以上就是assert关键字,大家可以根据自己的需求使用。但是注意不要被assert把原有的逻辑打破了。
    而且此关键字一般用于测试,实际的程序代码大多数是没有的。

  • 相关阅读:
    web设计经验<一> 提升移动设备响应式设计的8个建议
    web设计经验<九>教你测试手机网页的5大方法
    HTML5吧!少年
    用java页面下载图片
    在springmvc中,获取Connection接口
    360记住用户信息
    360浏览器Uncaught TypeError: object is not a function问题
    validation插件
    上传附件验证方法
    瀑布流布局
  • 原文地址:https://www.cnblogs.com/AJPFX/p/10861679.html
Copyright © 2011-2022 走看看