Java 测试文件是否存在但获取nullpointexception

Java 测试文件是否存在但获取nullpointexception,java,nullpointerexception,Java,Nullpointerexception,这将在下一行返回一个空点异常 public class ReadConfig { private File configFile; public boolean testConfig(){ if(Utils.isWindows()){ File configFile = new File("C:/config.properties"); } else{ File configF

这将在下一行返回一个空点异常

public class ReadConfig  {

    private File configFile; 

    public boolean testConfig(){
        if(Utils.isWindows()){
            File configFile = new File("C:/config.properties");
        }
        else{
            File configFile = new File("/config.properties");
        }
        if(configFile.exists() && !configFile.isDirectory()){
            System.out.println(configFile + "found!");
            return true;
        }
        else{
            try {
                configFile.createNewFile();
                System.out.println(configFile + "created!");
            } catch (IOException e) {
                e.printStackTrace();
            }
            return true;
        }
    }
}

在我看来,它应该返回false,为什么它会抛出一个
NullPointerException

问题是
if
else
分支中的语句初始化一个名为
configFile
的新变量,而不是使用该字段。删除
文件
应该可以做到这一点,例如:

if(configFile.exists() && !configFile.isDirectory()){

哪种语言?您最初在哪里定义变量
configFile
?语言是java,我更新了opIs,在类中还有一个名为
configFile
的字段?是的,我刚刚添加了它
if(Utils.isWindows()){
    configFile = new File("C:/config.properties");
} else {
   configFile = new File("/config.properties");
}