zoukankan      html  css  js  c++  java
  • Java异常总结

    为什么要异常处理?

    1. 程序运行时发生的一些错误不足以让程序终端,此时应抛出异常然后执行其他命令
    2. 让用户保存数据,最终以妥善的方式终止程序

    层次结构

    所有异常继承与Throwable类

    Error类属于Java运行时系统的内部错误和资源耗尽错误

    RuntimeException是程序错误导致的异常,如类型转换数组越界等

    • 错误的类型转会
    • 数组访问越界
    • 访问null指针

    OtherException是程序本身没有问题但由于像IO错误这类导致的其他异常,如文件不存在等

    • 试图在文件尾部后面读取数据
    • 试图打开不存在的文件
    • 试图根据字符串查找Class对象而该类不存在

    抛出异常

    Error类与RuntimeException类的异常称为非受查异常,其他称为受查异常

    • 需要抛出throws受查异常或try-catch去捕获所有受查异常,如果没有这么做,编译器会发出错误信息
    • 而RuntimeException是在写程序时应尽量避免的错误

    异常链

    可以在catch语句中抛出新的异常,这样做是为了改变异常的类型,添加具体的信息然后交给上层处理

    finally结构

    try结构中有return,而finally中没有,那么当try执行return语句时会去执行完finally子句然后再返回

    try结构中有return,而finally中也有,那么finally会覆盖try中的return结果

  • 相关阅读:
    VirtualBox安装及使用说明和虚拟机安装XP系统图文教程
    jbpm入门样例
    39个让你受益的HTML5教程
    JAVA反射机制
    怎样学好C语言,一个成功人士的心得!
    golang使用pprof检查goroutine泄露
    GridView编辑删除操作
    初识Servlet
    严苛模式(StrictMode)
    严苛模式(StrictMode)
  • 原文地址:https://www.cnblogs.com/ming-szu/p/9167375.html
Copyright © 2011-2022 走看看