NPE.CONST

如果尝试取消引用 null 值,将引发 NullPointerException。取消引用可以是函数调用、字段读取或写入,或数组访问。如果尝试取消引用一个以空常数初始化的变量,则会报告 NPE.CONST。

示例 1

复制
     static String searchForMaxString(final String text) {
         if (text == null) return null;
         int max = 0;
         StringTokenizer tok = new StringTokenizer(text, ":");
         String found = null;
         while (tok.hasMoreTokens()) {
             String x = tok.nextToken();
             if (x.length() >= max) {
                 max = x.length();
                 found = x;
             }
         }
         int len = found.length();
         System.err.println(len + " -> " + found);
         return found;
     }

针对第 27 行报告 NPE.CONST,因为在第 19 给变量 found 赋了 null 值。

安全培训

应用程序安全培训材料由 Secure Code Warrior 提供。

扩展

此检查器可通过 Klocwork 知识库进行扩展。有关详情,请参阅调整 Java 分析。