Java 要抛出哪个异常?

Java 要抛出哪个异常?,java,exception,Java,Exception,为什么结果是捕获到异常:第三个异常 首先在try中,它抛出随后捕获的第一个异常。然后抛出第二个异常,最后抛出第三个异常。为什么只将第三个异常发送回主异常?它就在Java语言规范中。(§11.3,异常的运行时处理) 如果try finally或try catch finally语句中的try或catch块完成 然后,在异常传播过程中突然执行finally子句,甚至 如果最终没有找到匹配的catch子句 如果由于try块的突然完成而执行finally子句,则 最后,从句本身突然完成,然后是从句突然完

为什么结果是捕获到异常:第三个异常


首先在try中,它抛出随后捕获的
第一个异常。然后抛出
第二个异常
,最后抛出
第三个异常
。为什么只将
第三个异常
发送回主异常?

它就在Java语言规范中。(§11.3,异常的运行时处理)

如果try finally或try catch finally语句中的try或catch块完成 然后,在异常传播过程中突然执行finally子句,甚至 如果最终没有找到匹配的catch子句

如果由于try块的突然完成而执行finally子句,则 最后,从句本身突然完成,然后是从句突然完成的原因 try块被丢弃,突然完成的新原因从此处传播


它就在Java语言规范中。(§11.3,异常的运行时处理)

如果try finally或try catch finally语句中的try或catch块完成 然后,在异常传播过程中突然执行finally子句,甚至 如果最终没有找到匹配的catch子句

如果由于try块的突然完成而执行finally子句,则 最后,从句本身突然完成,然后是从句突然完成的原因 try块被丢弃,突然完成的新原因从此处传播


JAVA请确保标记了什么语言.Java?请确保您标记了哪种语言。
public class Confusing{
    public static void main(String[] args){
        Confusing cf = new Confusing();
        try{
            cf.confuse();
        }catch(Exception e){
            System.out.println("Caught exception: " + e.getMessage());
        }
    }

    public void confuse() throws Exception{
        try{
            throw new Exception("First Exception");
        }catch(Exception e){
            throw new Exception("Second Exception");

            }finally{
            throw new Exception("Third Exception");
        }
    }
}