Java - 作为方法返回类型的异常和抛出部分声明中的错误

时间:2016-10-24 19:03:19

标签: java exception error-handling

最近我偶然发现了以下一段代码。

public class ErrorException {
  public Exception odd() throws Error {
      return new Exception();
  } 
  public static void main(String[] args) throws Error {
      new ErrorException().odd();
  }
}

我的问题如下:

  1. 为什么Java在专门创建声明的throws部分以处理异常时,在方法返回类型中允许Exception?

  2. 为什么在调用方法永远无法处理错误时,方法声明的throws部分允许使用Error类?

  3. 是否有任何特定的方案,其中方法返回类型的异常或方法声明的throws部分中的错误是有用的?

  4. 提前致谢。

1 个答案:

答案 0 :(得分:0)

感谢您的评论。

回到https://docs.oracle.com/javase/tutorial/essential/exceptions/catch.html并找到以下内容:

  

每个catch块都是一个异常处理程序,它处理由其参数指示的异常类型。参数类型ExceptionType声明了处理程序可以处理的异常类型,并且必须是继承自 Throwable 类的类的名称。