已经用throws异常啦,怎么还用try catch啊

解决方案 »

  1.   

    结果是不是catch in main()   nothing 啊
      

  2.   

    首先程序从main函数开始先进入try然后运行throw new Exception();(为抛出一个异常)但是运行到这我没看出来会出啥异常的可能性?
    然后就是捕获异常的条件catch,当发生异常的时候输出Caught in main(),如果没出异常就是输出nothing。
    try内的代码为执行内容  如果出现异常就为执行catch里面的,然后结束    如果没有异常最后就是执行try—catch之后的语句了
      

  3.   

    用try ..catch捕捉异常,因为try内抛出一个异常,被catch扑捉到,所以打印出catch in main(),又因为在main()那里已经申明抛出异常,程序继续运行,所以又打印nothing
      

  4.   


    public class TestException {    public static void main(String[] args) throws Exception {        System.out.println("main() start"); // 1)顺序执行        try {            System.out.println("try() start"); // 2)顺序执行            throw new Exception(); // 3)抛出异常,跳到catch语句            System.out.println("try() end"); // 永远也走不到这里来        } catch (Exception e) {            System.out.println("Caught in main()"); // 4)接收到异常,顺序执行        }        System.out.println("nothing"); // 5)顺序执行    }
    }
    main() start
    try() start
    Caught in main()
    nothing
      

  5.   

    顶楼上,方法上的throws意思是“这个方法中有了异常就往外抛”。
    try......catch 是截获这个异常,不让抛出去了,在catch中处理了
      

  6.   

    Caught in main()
    nothing