何时会出现catch块语句

时间:2014-12-20 05:33:54

标签: java exception-handling error-handling

我作为学生写作课程2年。我很好奇何时会出现catch语句。我尝试了一切使我的程序输出catch块内的语句,但我失败了。有什么想法吗?

try{
    System.out.print("Enter a sentence: ");
      String sentence = dataIn.readLine();
      String res = sentence.replaceAll(" ", "");
    System.out.println(res);
  }catch(IOException e){
    e.printStackTrace();
    System.err.println(e);
  }
}

2 个答案:

答案 0 :(得分:1)

当它内部的代码抛出IOException

时会触发它

你可以通过以下方式强制实现:

try{
    System.out.print("Enter a sentence: ");
    String sentence = dataIn.readLine();
    String res = sentence.replaceAll(" ", "");
    System.out.println(res);
    throw new IOException("Testing");
} catch(IOException e) {
    e.printStackTrace();
    System.err.println(e);
}

无论你的dataIn对象是什么,也可以抛出一个,例如,如果它正在读取的流发出错误

答案 1 :(得分:1)

你可以throw new IOException喜欢

try {
    throw new IOException("Like this");
} catch (IOException e) {
    e.printStackTrace();
    System.err.println(e);
}

输出

java.io.IOException: Like this
    at com.stackoverflow.Main.main(Main.java:8)
java.io.IOException: Like this