test.p()抛出的异常最后给finally()接收的,去掉finally()就可以了。

解决方案 »

  1.   

    异常最后给finally()接收的.??
    哪个finally()?main里的finally()?还是p()里面的finally()?
    p()里面的finally()不是用来处理重新抛出异常后的事情吗?那个异常不是已经抛给main()了吗?
    不明白。大哥能说清楚点吗?谢谢
      

  2.   

    如果把p()里面的finally()去掉。那么return语句应该放在哪?
    运行重抛异常的那条语句后,除了会执行finally()还会执行其他什么的吗?
      

  3.   

    test.p()抛出的异常最后给finally()接收的,去掉finally()
      

  4.   

    finally可以保留,但是不要把return放在finally里面.
    把return放到finally里面表示你无论在try里面发生什么事情都要
    return了.但是return和throws Exception只能二者取其一.
    把return拿出来试试就明白怎么回事了.
      

  5.   

    什么叫没有运行?
    在我机器上,输出是:will throw the MyException again
    return a=11
    Catch the MyExceptin e
    test.a=11很正确啊
      

  6.   

    异常怎么可能被finally接收,不是胡说八道吗