调试程序里的NullPointerException

发表于:2007-05-25来源:作者:点击数: 标签:
XForum 的编码规范规定:必须对输入的参数进行 null 验证用的是 Validation 里的一个方法,检查对象是否为 null : public static void validateNotNull( final Object testObject ) { // If object is null, then an exception is thrown if ( testObject =
 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 犯愁了。养成好的习惯,预防错误的发生,可以节省将来的好多时间。


原文转自:http://www.ltesting.net