当方法抛出异常时,我们是否需要在该方法内部使用try块?

例如,

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


是否需要try块?或者,该方法是否可以抛出SomeException而没有它:

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


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

最佳答案

如果SomeException是已检查的异常,则必须


使用try{}catch块或
声明您的方法将其抛出。


您不必同时做这两个事情,您在问题中显示的任何一个例子都很好。

区别在于,使用try子句可以自己处理SomeException,而通过声明自己的方法throws则可以将处理SomeException的责任委托给调用方法。

10-01 17:32