zoukankan      html  css  js  c++  java
  • Eclipse 下使用断言功能

    所谓断言(assertion)是一个Java语句,布尔表达式,程序员认为在程序执行时该表达式的值应该为true。系统通过计算该布尔表达式执行断言,若该表达式为false系统会报告一个错误。

    断言是通过assert关键字来声明的,断言功能的使用有两种格式:

    assert expression ;     或者   assert expression : detailMessage ;

    其中,expression为布尔表达式,detailMessage是基本数据类型或Object类型的值。当断言语句被执行时,Java计算expression的值,如果其值为false,抛出AssertionError异常。对于第二种带有一个详细信息的断言语句,将使用AssertionError类的与消息的数据类型匹配的构造方法。由于AssertionError类是Error类的子类,当断言为false时,程序将在控制台显示一条消息并终止程序的执行。

    Eclipse默认是没有开启断言功能的,所以你使用断言也不会看到效果的,首先我们用以下步骤打开断言的开关:

    在MyEclipse中
     Windows--> Preferences--->Java--->Installed JREs--->点击正使用的JDK--->Edit--->
     Default VM Arguments文本框中输入:-ea

     如下图

     

    打开之后,用下面的代码进行测试:

    public class AseertTest {
        
        public boolean flag = true;// 改变flag值然后查看控制台输出
        
        public boolean isValid(){
            
            return flag;
        }
    
        public static void main(String args[]){
    
            AseertTest assertion = new AseertTest();
            assert assertion.isValid() : "Flag must be true!";
            System.out.println("assert end");
        }
    }

    更改flag的值为false,使条件无法测试通过,这时就会抛出如下异常,也就说明断言已经起作用了。

  • 相关阅读:
    第十周阅读内容
    第十周学习小结
    第九周阅读内容
    第九周学习小结
    第八周学习小结
    ..总结
    .总结
    总结.
    周总结
    总结
  • 原文地址:https://www.cnblogs.com/heshan664754022/p/3049244.html
Copyright © 2011-2022 走看看