作家
登录

深入探讨Java中的异常与错误处理

作者: 来源: 2017-05-11 10:48:14 阅读 我要评论

  • 常出现后 
  • */ 
  •  
  • public static void testException2() { 
  •      int[] ints = new int[] { 1, 2, 3, 4 }; 
  •      System.out.println("异常出现前"); 
  •      System.out.println(ints[4]); 
  •      System.out.println("我还有幸履行到吗");// 产生异常今后,他后面的代码不克不及被履行 
  •  
  • 起首指出例子中的不足之处,IndexOutofBoundsException是一个非受检异常,所以不消try…catch…显示捕获,然则我的目标是对同一个异常用不合的处理方法,看它会有什么不合的而结不雅(这里也就只能用它姑息一下了)。异常出现时第一个办法只是彪炳了try块,然则它后面的代码会照样履行的。然则第二种就不一样了直接彪炳了办法,比较强硬。大年夜第一个办法中我们看到,try…catch…是一种”事务性”的保障,它的目标是包管法度榜样在异常的情况下运行完毕,同时它还会告诉法度榜样员法度榜样中掉足的具体信息(这种具体信罕见时要依附于法度榜样员设计)。

    例2. 从新抛出异常

    1. public void readFile() { 
    2.      BufferedReader reader = null
    3.      try { 
    4.            reader = new BufferedReader(new InputStreamReader(new FileInputStream("file"))); 
    5.            // do some other work 
    6.            //close reader 
    7.            reader.close(); 
    8.      } catch (FileNotFoundException e) { 
    9.            e.printStackTrace(); 
    10.      } catch (IOException e) { 
    11.            e.printStackTrace(); 
    12.      } 
    13.  

    异常的本意是好的,让我们试图修复法度榜样,然则实际中我们修复的几率很小,我们很多时刻就是用它来记录掉足的信息。如不雅钠揭捉?倦了一向的处理异常,从新抛出异常对你来说可能是一个很好的摆脱。原封不动的把这个异常抛给上一级,抛给调用这个办法的人,让他来费脑筋吧。如许看来,java异常(当然指的是受检异常)又给我们平添很多麻烦,尽管它的出发点是好的。

    1. ExceptionA,ExceptionB,ExceptionC 
    2. public class ExceptionA extends Exception { 
    3.      public ExceptionA(String str) { 
    4.           super(); 
    5.      } 
    6. public class ExceptionB extends ExceptionA { 
    7.      public ExceptionB(String str) { 
    8.           super(str); 
    9.      } 

    10.   推荐阅读

        当今世界最有价值的资源是什么?不是石油,而是数据

      《经计揭捉?人》揭橥封面文┞仿称,数据已经代替石油成为当当代界最有价值的资本,而面对这一新的变更,反垄断监管者也应当改变思维。以下为原文内容:特斯拉收集的无人驾驶汽车数据越多>>>详细阅读


      本文标题:深入探讨Java中的异常与错误处理

      地址:http://www.17bianji.com/lsqh/35144.html

    关键词: 探索发现

    乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

    网友点评
    自媒体专栏

    评论

    热度

    精彩导读
    栏目ID=71的表不存在(操作类型=0)