2015-03-31 32 views
3

这些天来,我一直在试图学习java,但我对抛出异常感到困惑。此语句是否正确?:方法签名中的抛出会导致异常(或一些异常)抛出到另一个调用此方法的方法。并且调用方法有try/catch来处理抛出的异常。java中的抛出规则

在此先感谢。 Farrohk

+4

[检查此](https://docs.oracle.com/javase/tutorial/essential/exceptions/) – 2015-03-31 10:53:20

回答

3

这两种说法都不正确。

抛出在方法签名引起意外事件(或一些例外)投入到另一个方法是调用此方法

宣布采取的方法throws异常只是表明它可能抛出异常,并非如此。

和调用方法有try/catch来处理抛出的异常。

调用者可以声明它抛出相同的异常,而不是尝试/捕捉,所以异常传播到该方法的调用者。

+0

谢谢,假设我们有_method_通过抛出异常声明它可能抛出异常。现在,如果_method_抛出异常,会发生什么?哪里会处理那个异常?如果什么都不会发生,那么没有理由通过抛出来声明这个_method_。 – 2015-03-31 11:41:41

+0

它必须由调用者处理,或者通过'throws'捕获或传播,这将处理异常的负担传递给调用者的调用者。我的第二点只是说try/catch不是唯一的选择。 – 2015-03-31 11:43:40

0

抛出子句中用于声明异常和thow关键字用于显式抛出异常。

这个link有很多关于抛球和抛球差异的信息可以帮助你提高你的理解力。