Java中assert和静态导入的使用

Java中assert和静态导入的使用

最近一直在做测试,发现了一些JDK 1.5中的一些新的语法特性,在开发的时候确实省了不少时间,在此做简要的记录:

assert的用法

assert expression1; assert expression1:expression2;
如果expression1为true,则不抛出错误,程序正常运行,expression2也不会执行。
如果expression1为false,则抛出异常,程序中断跳出,expression2执行。

一般来说,不要在expression1、expression2中使用函数的返回值;
不要将其使用在public函数中检查输入参数,但可以用于private函数中检测输入参数。

public class AssertFoo {

    public static void main(String args[]) {

        //断言1结果为true,则继续往下执行

        assert true;

        System.out.println("断言1没有问题,Go!");

 

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

 

        //断言2结果为false,程序终止

        assert false : "断言失败,此表达式的信息将会在抛出异常的时候输出!";

        System.out.println("断言2没有问题,Go!");

    }

}

Assert主要是用在程序的调试中,不能因为有了assert而影响了程序的正常运行,相反,如果去掉assert机制后,程序应该可以实现正常的功能,通过一个简单的例子来说明如何使用assert。


Assert是在JDK 1.4中引入的新特性,编译的时候要使用java -source,执行的时候要使用java -ea。

在eclispse中执行的时候要配置run中的执行时所需要的参数,如图所示:

即在VM arguments中指定运行参数 -ea。

静态导入的使用

import static com.loojoy.assertdemo.StaticOperation.*;// 这是最重//要的

public class ClientConsole {

public static void main(String[] args) {

// assert 1 == 1;

// System.out.println("Finished");

println();

}

}

通常静态方法在使用的时候需要类名.属性名或这是方法名。但是使用了静态导入之后就可以直接使用方法,而不需要再使用类名做前缀了。Let's drink code,看代码是最好的学习方式。

public class StaticOperation {

public static void println(){

System.out.println("     这是一个静态导入方法 :) ");

}

}

在这里需要注意的就是静态方法的导入方式 import static 包名.类名.*,这种方式,否则会报错。

<!--EndFragment-->
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值