java - 抛出 Java 异常

标签 java exception try-catch throw throws

当方法抛出并出现异常时,我们是否需要在方法内有一个try block ?

例如,

    public void foo() throws SomeException{
        try{
            // content of method
        }
    }

是否需要try block ?或者,如果没有它,该方法是否能够抛出 SomeException :

    public void foo() throws SomeException{
            // content of method
    }

当我们throw显式抛出SomeException时就是这种情况。

最佳答案

如果 SomeException 是一个检查异常,您必须要么

  • 使用 try{}catch block
  • 声明你的方法抛出它。

您不必同时执行这两项操作,您在问题中展示的任何一个示例都可以正常工作。

不同之处在于,使用 try 子句,您可以自己处理 SomeException,而通过声明您自己的方法 throws,您可以委托(delegate)处理 SomeException 的责任交给调用方法。

关于java - 抛出 Java 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11647383/

相关文章:

c++ - 如何捕捉 "free(): invalid pointer:"

java - 完全测试算法输出(动态规划最长子序列)

java - 如何通过uuid获取文档

java - 从 String 中删除不适合 UTF-8 编码的字符

java - 分配多个数字输入

java - java中代码层的异常处理

c# - 停止/启动后 URI 的注册已经存在

python - 将异常主体存储在变量中

java - 使用 try/catch 打破无限循环

iOS : Background Thread Exceptions Not Crashing