gpt4 book ai didi

Java Null 解除引用垃圾收集(来自 Fortify 扫描)

转载 作者:行者123 更新时间:2023-11-30 06:11:17 25 4
gpt4 key购买 nike

我的 Java 有点生疏......尤其是在垃圾收集方面,所以我可以使用一些帮助来找到解决方案,以解决此问题如何在末尾以“null”结尾:

public void copyFileBuffered(String inPUT, String outPUT) throws
FileNotFoundException, IOException {

InputStream is = null;
OutputStream os = null;
try{
if(inPUT != null)
is = new FileInputStream(inPUT);
if(outPUT != null)
os = new FileOutputStream(outPUT);
int count = 0;
byte b[] = new byte[BLKSIZ];
while ((count = is.read(b)) != -1) { /** FORTIFY ERROR LINE */
os.write(b, 0, count);
}
}
catch(Exception e){}
finally{
if(is != null)
is.close();
if(os != null)
os.close();
}

}

据我所知,它是由“os = new FileOutputStream(outPUT);”处理的FORTIFY:方法 copyFileBuffered() 取消引用空指针。

最佳答案

您的 if 语句逐字且明确地陈述了以下内容:

  • 如果 inPUTnull,则 isnull
  • 如果 outPUTnull,则 osnull

静态分析会告诉您的代码,您可能取消引用null,这将是一个严重的错误。

您没有告诉我们它们来自哪里,因此,如果您实际上遇到了 NullPointerException,请确保 inPUToutPUT 实际上是作为 null 传递到这段代码的。

关于Java Null 解除引用垃圾收集(来自 Fortify 扫描),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50179227/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com