Java assert

在Java中,assert关键字是从JAVA SE 1.4 引入的,为了避免和老版本的Java代码中使用了assert关键字导致错误,Java在执行的时候默认是不启动断言检查的(这个时候,所有的断言语句都将忽略!)。
如何开启断言?
在项目的run按钮旁找到run/debug configuration,设置JUnit的vm options为-ea
assert
有关断言的更多参数:
-ea java -ea 打开所有用户类的assertion 
-da java -da 关闭所有用户类的assertion 
-ea: java -ea:MyClass1 打开MyClass1的assertion 
-da: java -da: MyClass1 关闭MyClass1的assertion 
-ea: java -ea:pkg1 打开pkg1包的assertion 
-da: java -da:pkg1 关闭pkg1包的assertion 
-ea:... java -ea:... 打开缺省包(无名包)的assertion 
-da:... java -da:... 关闭缺省包(无名包)的assertion 
-ea:... java -ea:pkg1... 打开pkg1包和其子包的assertion 
-da:... java -da:pkg1... 关闭pkg1包和其子包的assertion 
-esa java -esa 打开系统类的assertion 
-dsa java -dsa 关闭系统类的assertion
综合使用 java -dsa:MyClass1:pkg1 关闭MyClass1和pkg1包的assertion
1、assert <boolean表达式>
如果<boolean表达式>为true,则程序继续执行。
如果为false,则程序抛出AssertionError,并终止执行。
2、assert <boolean表达式> : <错误信息表达式>
如果<boolean表达式>为true,则程序继续执行。
如果为false,则程序抛出java.lang.AssertionError,并输入<错误信息表达式>。
例如:
class="prettyprint linenums"> assert fab != null:"fab为空";
        fab.setOnClickListener(new View.OnClickListener()
        {
            @Override
            public void onClick(View view)
            {
                Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG).setAction("Action", null).show();
            }
        });

如果fab 不等于空,则程序继续执行;

如果fab等于空,则会执行 fab为空;

参考:程序园 【Android】关于Android Studio 开启断言assert

熔 岩” 博客 Java陷阱之assert关键字

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值