NPE.RET.UTIL

如果尝试取消引用 null 值,将引发 NullPointerException。取消引用可以是函数调用、字段读取或写入,或数组访问。如果调用的方法在知识库中被描述为可能返回空值的方法,则从取消引用的“java.util”包的类中进行方法调用将导致报告 NPE.RET.UTIL。

示例 1

复制
     private Map<String, String> paths = new HashMap<String, String>();
 
     public void addPath(String name, String path) {
         paths.put(name, path);
     }
 
     private String getNormalizedPath(String name) throws IOException {
         return paths.get(name).toLowerCase();
     }

针对第 24 行报告 NPE.RET.UTIL,因为 paths.get(name) 调用所返回的值可能为 null。

安全培训

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

扩展

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