美文网首页Fortify代码漏洞修复专题
【修复总结】Null Dereference 空指针引用

【修复总结】Null Dereference 空指针引用

作者: Franchen | 来源:发表于2019-06-18 09:43 被阅读0次

    描述

    当违反程序员的一个或多个假设时,通常会出现 null 指针异常。如果程序明确将对象设置为null,但稍后却间接引用该对象,则将出现 dereference-after-store 错误。此错误通常是因为程序员在声明变量时将变量初始化为 null。

    案例

    String str = null;
    for (String item : list) {
        str = item;
    }
    return str.length(); // 若list为空数组,则循环结束后str依旧为null。此时程序奔溃。
    

    修复方案

    1、在定义时赋予一个非null对象,例如:String str = "";
    2、当不能保证对象非null时,可在调用方法前判断是否为null,若为null则赋予默认值或者阻断代码。

    相关文章

      网友评论

        本文标题:【修复总结】Null Dereference 空指针引用

        本文链接:https://www.haomeiwen.com/subject/xolxqctx.html