调试程序里的NullPointerException

王朝other·作者佚名  2006-12-16
窄屏简体版  字體: |||超大  

以前,写程序的时候,最怕遇到 NullPointerException 了,一看到,就是一身冷汗,心里想着

恐怕又得浪费 一个小时的时间来找到哪个对象 null 了。

XForum 的编码规范规定:必须对输入的参数进行 null 验证

用的是 Validation 里的一个方法,检查对象是否为 null :

public static void validateNotNull( final Object testObject )

{

// If object is null, then an exception is thrown

if ( testObject == null )

{

throw new IllegalArgumentException( "Object can't be null." );

}

}

如果把它改造成下面的形式,会使输出更加明显:

public static void validateNotNull(String objectName, Object object) {

if ( object == null ) {

throw new IllegalArgumentException( objectName + " can't be null !!!" );

}

}

比如在真正的程序里:

public void checkLogon( String username, String password ) {

Validation.validateNotNull( "username", username );

Validation.validateNotNull( "password", password );

// ...

}

以后,在程序运行的过程中,如果再出现 username 为 null 的时候

程序就会输出:

java.lang.IllegalArgumentException: username can't be null !!!

哈哈,再不用为找 null 犯愁了。

养成好的习惯,预防错误的发生,可以节省将来的好多时间。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航