zoukankan      html  css  js  c++  java
  • java基础之 异常

    Throwable是所有Java程序中错误处理的基类,有两种子类:ErrorException

     

    • Error:表示程序在运行期间出现了十分严重、不可恢复的错误,在这种情况下应用程序只能中止运行,例如JAVA虚拟机出现错误。在程序中不用捕获Error类型的异常。一般情况下,在程序中也不应该抛出Error类型的异常
    • Exception:表示可恢复的例外,这是可捕捉到的
      • checked exception:是相对于Unchecked Exception而言的,Java中并没有一个名为Checked Exception的类。它是在编程中使用最多的Exception,所有继承自Exception并且不是RuntimeException的异常都是Checked Exception。JAVA 语言规定必须对checked Exception作处理,编译器会对此作检查,要么在方法体中声明抛出checked Exception,要么使用catch语句捕获checked Exception进行处理,不然不能通过编译。常用的Checked Exception有IOException、ClassNotFoundException等
      • runtime exception:是一种Unchecked Exception,即表示编译器不会检查程序是否对RuntimeException作了处理,在程序中不必捕获RuntimException类型的异常,也不必在方法体声明抛出RuntimeException类。一般来说,RuntimeException发生的时候,表示程序中出现了编程错误,所以应该找出错误修改程序,而不是去捕获RuntimeException。常见的RuntimeException有NullPointException、ClassCastException、IllegalArgumentException、IndexOutOfBoundException等。

    正确地处理异常

    • 针对不用的异常采取合适的、正确的异常处理方式,不要遇到任何异常都printTrace()或者打印一个日志
    • catch时指定具体的异常。不要一股脑地catch Exception,具体的异常应该单独catch住,越具体的异常越早catch
    • 涉及到资源时,需要finally。如果涉及到资源的关闭时,应该将关闭资源的代码写在finally代码块内
    • 最小化try{ } catch{ }范围。try的范围应该尽量小,最好就是try住抛出异常的那个方法即可


  • 相关阅读:
    java核心技术记录之集合
    Set的非重复判断是根据什么判断的
    struts2-2.3.4.1的struts-default.xml源码
    纯代码搭建项目框架
    初始化项目
    项目部署
    使用estimatedRowHeight的优缺点
    懒加载
    闭包
    Swift 类的构造函数
  • 原文地址:https://www.cnblogs.com/amei0/p/4591770.html
Copyright © 2011-2022 走看看