import java.io.*;
import java.util.*;
public class MultiCatch
{
public static void main(String[] args)
{
int number;
try
{
File file = new File("Numbers.txt");
Scanner inputFile = new Scanner(file);
while (inputFile.hasNext())
{
number = inputFile.nextInt();
System.out.println(number);
}
inputFile.close();
}
catch(FileNotFoundException | InputMismatchException ex)
{
System.out.println("Error processing the file.");
//System.out.println("Error processing the file." + ex.getMessage());
}
}
}
$ javac MultiCatch.java
MultiCatch.java:25: <identifier> expected
catch(FileNotFoundException | InputMismatchException ex)
^
MultiCatch.java:25: '{' expected
catch(FileNotFoundException | InputMismatchException ex)
^
MultiCatch.java:25: not a statement
catch(FileNotFoundException | InputMismatchException ex)
^
MultiCatch.java:25: ';' expected
catch(FileNotFoundException | InputMismatchException ex)
^
MultiCatch.java:31: reached end of file while parsing
}
^
5 errors
如果这有什么不同的话,我是在运行Java7的OSX10.8上。
在Java6下,我在您的代码中得到以下编译器错误:
C:\dev\src\misc\MultiCatch.java:25: <identifier> expected
catch(FileNotFoundException | InputMismatchException ex)
^
C:\dev\src\misc\MultiCatch.java:25: '{' expected
catch(FileNotFoundException | InputMismatchException ex)
^
C:\dev\src\misc\MultiCatch.java:25: not a statement
catch(FileNotFoundException | InputMismatchException ex)
^
C:\dev\src\misc\MultiCatch.java:25: ';' expected
catch(FileNotFoundException | InputMismatchException ex)
^
C:\dev\src\misc\MultiCatch.java:31: reached end of file while parsing
}
但是,在Java7下,代码可以成功编译。
您必须使用Java6或更低版本才能得到这些错误。
catch(FileNotFoundException | InputMismatchException ex)
无法在中包装流对象。 我试过这样: Eclipse开始抱怨在下划线,并建议它需要用try/catch包围
问题内容: 为什么Java中的某些异常未被捕获?这是代码由于没有处理的异常而完全失败。(Java版本1.4)。 我得到一个 但这有效 我懂了 我以为捕获异常会捕获所有异常?如何捕获Java中的所有异常? 问题答案: 因为某些异常不是源自-例如和。 基本上,类型层次结构是: 只能抛出派生类,因此,如果您抓住,那实际上就可以抓住一切。 ,以及任何异常,从获得 其他 比那些源自数作为 检查的异常 -他们
我需要应用程序将错误写入位置。有没有我可以用Java异常处理做这件事?我已经在抛接IOerrors了,所以我不知道问题出在哪里……? 我正在从标准输入读取数据,并将其压缩并写入标准输出。 写入/dev/full不是引发异常...有没有关于如何引发异常的想法?
为什么Java中的一些异常不被捕获?这是完全失败的代码,有一个未处理的异常。(Java版本1.4)。 我在线程“main”java中得到了一个 但这行得通 我在java中没有发现任何方法错误。lang.NoSuchMethodError: 我以为捕获异常会捕获所有异常?如何捕获java中的所有异常?
在尝试我在方法中发现的多捕获特性时,一切都按预期正常工作。