1. try/catch/finally 
   catch/finally可以只有1个,也可全有。
   不管try段有无异常,finally都会执行。2. 由于finally段又抛出新异常,导致最初的异常无法获得(即“丢失”)3. 可以
另外,Exception通常翻译为“异常”,不是“违例”

解决方案 »

  1.   

    THINK IN JAVA都把异常叫做违反例哦
    你的意思是说TRY CATCH能被TRY FINNALLY替换?
    那么TRY FINANLLY和他有一样的作用?
    那么谁来捕获这个异常呢?
      

  2.   

    //THINK IN JAVA都把异常叫做违反例哦
    翻译的问题//你的意思是说TRY CATCH能被TRY FINNALLY替换?那么TRY FINANLLY和他有一样的作用?
    我没说,你理解错。 要是能代替那要2个干吗, catch段异常时才执行//那么谁来捕获这个异常呢?
    JVM
      

  3.   

    楼上讲的非常仔细!
    楼主应该能理解了吧!我的见解和楼上一样!
    catch本来就是用来捕捉异常的,不过要是你不知道到底会发生什么异常,那你可以让jvm去捕捉!
    那么程序执行到那的时候,jvm就会抛出一个异常,然后执行你的finally中的语句
      

  4.   

    finally 字句的作用跟catch不一样,它并不捕捉异常,而是保证不管有没有异常,都能执行
    一些操作。这在处理需要资源的地方相当有用。异常(Exception)丢失并不是因为finally 捕捉了,而是因为在finally字句里把引起异常的类
    本身给释放了,所以相应的异常也就没有被处理。对于public static void main(String[] args) 扔出的异常应该是由JVM截获,
    只是没扔出来吧了。