调试程序里的 NullPointerException

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 犯愁了。养成好的习惯,预防错误的发生,可以节省将来的好多时间。

Published At
Categories with 数据库类
Tagged with
comments powered by Disqus