zoukankan      html  css  js  c++  java
  • java assert的用法简介

    assert的基本用法

    assertion(断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制,如C,C++和Eiffel等,但是支持的形式不尽相同,有的是通过语言本身、有的是通过库函数等。另外,从理论上来说,通过assertion方式可以证明程序的正确性,但是这是一项相当复杂的工作,目前还没有太多的实践意义。

    在实现中,assertion就是在程序中的一条语句,它对一个boolean表达式进行检查,一个正确程序必须保证这个boolean表达式的值为true;如果该值为false,说明程序已经处于不正确的状态下,系统将给出警告并且退出。一般来说,assertion用于保证程序最基本、关键的正确性。assertion检查通常在开发和测试时开启。为了提高性能,在软件发布后,assertion检查通常是关闭的。下面简单介绍一下Java中assertion的实现。

    在语法上,为了支持assertion,Java增加了一个关键字assert。它包括两种表达式,分别如下:

    1. assert expression1;
    2. assert expression1: expression2;
        
    

    expression1表示一个boolean表达式,expression2表示一个基本类型、表达式或者是一个Object,用于在失败时输出错误信息。

    在运行时,如果关闭了assertion功能,这些语句将不起任何作用。如果打开了assertion功能,那么expression1的值将被计算,如果它的值为false,该语句强抛出一个AssertionError对象。

    示例代码如下:

    package com.chzhao.test;
    
    public class AssertDemo {
    
    	public static void main(String[] args) {
    		
    		test1(-5);
    		test2(-3);
    	}
    	
    	private static void test1(int a){
    		assert a > 0;
    		System.out.println(a);
    	}
    	private static void test2(int a){
    		assert a > 0 : "something goes wrong here, a cannot be less than 0";
    		System.out.println(a);
    	}
    }
    
    

    eclipse的相关设置

    在eclipse中,必须开启相关设置。具体在偏好设置,选择Installed JREs,选择相关版本,点击edit,在Default VM arguments里面输入-ea就可以了。

  • 相关阅读:
    Idea安装Scala插件(转)
    serialVersionUID的作用(转)
    [转]学习win10的bash使用ssh连接远程服务器
    [转]使用 Travis CI 部署你的 Hexo 博客
    【转】H5
    【转】Virtual DOM
    【转】hexo博客图片问题
    【转】V8 之旅: 垃圾回收器
    关于react-redux中Provider、connect的解析
    【转】webpack4
  • 原文地址:https://www.cnblogs.com/wardensky/p/4307848.html
Copyright © 2011-2022 走看看