在java中发现空指针异常
当我点击save按钮保存我的配置时,我得到空指针异常。我试着调试代码,当时我发现中object的值为null。我不明白为什么在java中发现空指针异常,java,Java,当我点击save按钮保存我的配置时,我得到空指针异常。我试着调试代码,当时我发现中object的值为null。我不明白为什么 我还检查了作为参数文件传递的路径是否正确我认为NPE发生的原因只有一个——它没有找到具有您给出的路径的文件 我还检查了作为参数文件传递的路径是否正确 有时,即使您认为您提供了正确的文件路径,这取决于目录层次结构,程序可能引用tt相对路径,这可能与您提供的路径不同。 然后你得到了in=null 尝试使用file.exists(),而不是FileInputStream(),您
我还检查了作为参数文件传递的路径是否正确我认为NPE发生的原因只有一个——它没有找到具有您给出的路径的文件 我还检查了作为参数文件传递的路径是否正确 有时,即使您认为您提供了正确的文件路径,这取决于目录层次结构,程序可能引用tt相对路径,这可能与您提供的路径不同。 然后你得到了in=null
尝试使用
file.exists()
,而不是FileInputStream(),您可以将文件放在类路径下。尝试使用file.exists()
确保文件
对象存在。如果文件存在,它将返回true
。如果文件
对象为null
它也会引发NullPointerException。in=null时哪一行起作用?或者,由于您忽略的异常,此函数只是返回null?启动调试器后,我已将引用变量初始化为null,然后它首先执行try block first语句,仅在=new FileInputStream(file)中执行try block first语句。。。。我是developemnt新手,请帮助我删除此错误。请添加空堆栈跟踪,并指出代码中的哪一行对应于堆栈跟踪中的错误行。顺便说一句,这看起来像是何时使用try with resources的教科书示例
private static Properties getProperties(File file)
{
InputStream in = null;
try
{
in = new FileInputStream(file);
return loadProperties(in);
}
catch (IOException ex)
{
return null;
}
finally
{
if (in != null)
{
try
{
in.close();
}
catch (IOException ex)
{
ex.printStackTrace();
// ignore
}
}
}
}