Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java文件异常处理_Java_Exception - Fatal编程技术网

Java文件异常处理

Java文件异常处理,java,exception,Java,Exception,我应该为java分配的文件操作创建一个异常处理示例程序。因为我是C++的人,所以我理解困难。如果有人能指出我下面代码中的缺陷,那将非常有帮助。我指的是这篇文章。Eclipse为FileNotFoundException提供了无法访问的catch块。决不会从try语句体错误引发此异常 请查看文档以获取详细信息。它声明抛出的唯一异常是NullPointerException。因此它不能抛出FileNotFoundException,这就是为什么会出现错误。您无法尝试捕获已检查的异常,编译器可以证明该

我应该为java分配的文件操作创建一个异常处理示例程序。因为我是C++的人,所以我理解困难。如果有人能指出我下面代码中的缺陷,那将非常有帮助。我指的是这篇文章。Eclipse为FileNotFoundException提供了无法访问的catch块。决不会从try语句体错误引发此异常

请查看文档以获取详细信息。它声明抛出的唯一异常是NullPointerException。因此它不能抛出FileNotFoundException,这就是为什么会出现错误。您无法尝试捕获已检查的异常,编译器可以证明该异常从未在相应的try块中抛出

创建文件对象不会检查其是否存在。如果您正在打开文件,例如使用新的FileInputStream。。。然后可能会抛出FileNotFoundException。。。但不仅仅是创建一个文件对象。

查看文档中的文件。它声明抛出的唯一异常是NullPointerException。因此它不能抛出FileNotFoundException,这就是为什么会出现错误。您无法尝试捕获已检查的异常,编译器可以证明该异常从未在相应的try块中抛出


创建文件对象不会检查其是否存在。如果您正在打开文件,例如使用新的FileInputStream。。。然后可能会抛出FileNotFoundException。。。但不仅仅是创建文件对象。

这是因为类的构造函数只有一个参数

public File(String pathname)  
Parameters:pathname - A pathname string Throws: NullPointerException - If the pathname argument is null
Throws: NullPointerException - If the pathname argument is null
仅引发一个异常,即NullPointerException。您的代码试图捕获与NullPointerException无关的FileNotFoundException,这就是为什么在Eclipse中出现此错误


一种方法是捕获类Exception的异常,它是Java中所有异常的超类。另一种方法是捕获被调用构造抛出的不同catch块中的所有异常,这些异常可以通过其API轻松获得。第三种方法是再次只捕获构造实际抛出的对应用程序有意义的异常,而忽略其他异常。

这是因为类的构造函数只有一个参数

public File(String pathname)  
Parameters:pathname - A pathname string Throws: NullPointerException - If the pathname argument is null
Throws: NullPointerException - If the pathname argument is null
仅引发一个异常,即NullPointerException。您的代码试图捕获与NullPointerException无关的FileNotFoundException,这就是为什么在Eclipse中出现此错误


一种方法是捕获类Exception的异常,它是Java中所有异常的超类。另一种方法是捕获被调用构造抛出的不同catch块中的所有异常,这些异常可以通过其API轻松获得。第三种方法是再次只捕获构造实际抛出的对应用程序有意义的异常,而忽略其他异常。

以后,请在问题中包含代码。还请详细阅读Java检查和未检查的预期。第一个从Exception类继承,后一个从RuntimeException继承。以后,请在您的问题中包含代码。还请详细阅读Java检查和未检查的预期。第一个继承自Exception类,后一个继承自RuntimeException。谢谢大家!好了,如果我想抛出代码中提到的所有异常,我该怎么办?@CAD\u coding:你是什么意思?您的代码没有试图抛出任何异常。@Jonsket我想抛出filenotfoundexception、EOFEException、objectstreamexception、ioexception。在此处找到它们:@Jagger实际上,注释部分将位于filenotfoundexception的捕获中。我想让用户知道为什么找不到文件。@CAD\U编码:如果你想自己扔,你可以这样做。或者,您也可以做一些抛出异常本身的事情,比如打开一个包含相关文件的FileInputStream。谢谢大家!好了,如果我想抛出代码中提到的所有异常,我该怎么办?@CAD\u coding:你是什么意思?您的代码没有试图抛出任何异常。@Jonsket我想抛出filenotfoundexception、EOFEException、objectstreamexception、ioexception。在此处找到它们:@Jagger实际上,注释部分将位于filenotfoundexception的捕获中。我想让用户知道为什么找不到文件。@CAD\U编码:如果你想自己扔,你可以这样做。或者,您可以做一些抛出异常本身的事情,比如打开一个包含相关文件的FileInputStream。