码迷,mamicode.com
首页 > 编程语言 > 详细

Java基础の乱弹琴一:assert关键字

时间:2015-08-29 00:43:14      阅读:164      评论:0      收藏:0      [点我收藏+]

标签:

一。概述

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,并输入<错误信息表达式>。
三。例子
下面给出一个例子,通过例子说明其用法:
 1 public class AssertFoo {
 2     public static void main(String args[]) {
 3         //断言1结果为true,则继续往下执行
 4         assert true;
 5         System.out.println("断言1没有问题,Go!");
 6         System.out.println("\n-----------------\n");
 7         //断言2结果为false,程序终止
 8         assert false : "断言失败,此表达式的信息将会在抛出异常的时候输出!";
 9         System.out.println("断言2没有问题,Go!");
10     }
11 }
在Eclipse下创建类保存编译运行,输出结果
技术分享
可见并没有执行assert,那么在Eclipse下如何设置开启断言呢,看下面的方法:
配置Run Configurations
菜单栏--->Run--->Run Configurations打开配置界面,在VM argument里面输入-ea即可,如下图所示
技术分享
我在Test类运行配置中加了-ea,然后在Test的main函数中调用A类,在A类中加了断言,断言执行
我在A类运行配置中加了-ea,然后在Test的main函数中调用A类,在A类中加了断言,断言没有执行
断言执行结果:注意看绿框框起来那句话,没有注意的话看看上面的代码;-)
技术分享
四。建议
个人建议避免使用assert断言,使用真的不太方便,不如JUint或者Debug加断点使用方便,还能查看前面的变量的值,分析原因
 

Java基础の乱弹琴一:assert关键字

标签:

原文地址:http://www.cnblogs.com/draenei/p/4768141.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!