zoukankan      html  css  js  c++  java
  • Java异常的深层次理解

    异常是指java程序运行的时候发生的非正常情况或错误;

    Java 使用面向对象的思想去处理异常,它把程序中发生的每个异常也都封装到对象中,该对象包含有异常的信息。

    Java对异常进行了分类,所有异常的根类为Throwable,下面分为两个子类:Error和Exception;

    Error表示程序本身无法克服和恢复的一种严重问题,程序只有死的份;例如:内存溢出和线程死锁等系统问题。

    Exception表示程序还能够克服和恢复的问题,其中又分为系统异常和普通异常,系统异常是软件本身缺陷所导致的问题,也就是软件开发人员考虑不周所导致的问题,软件使用者无法克服和恢复问题,但在这种问题下还可以让系统继续运行或者让软件死掉,例如,数组越界,空指针异常,类转换异常;普通异常是运行环境的变化或异常导致的问题,是用户能够克服的问题,例如,网络断线,硬盘空间不够,发生这样的异常程序不应该死掉;

    Java为系统异常和普通异常分别提供了不同的解决方案,编译器强制普通异常必须try..catch处理或者throws声明抛出异常处理,所以普通异常也称为checked异常,编译时异常;而系统异常可以处理也可以不处理,所以,编译器不强制用try…catch处理或用throws声明,所以系统异常也称为unchecked异常。

    提示:就按照三个级别去思考:虚拟机必须宕机的错误,程序可以死掉也可以不死掉的错误,程序不应该死掉的错误;

  • 相关阅读:
    动态内存
    用c的数组简单的模拟了入栈
    c++实验,需要的人都知道是啥
    c语言的一个简单的链表
    c++的引用
    c++的一个有趣的程序
    奥运五环的绘制
    网页中的事件与事件响应
    响应事件的示例
    关于window.onload,window.onbeforeload与window.onunload
  • 原文地址:https://www.cnblogs.com/yys369/p/3002407.html
Copyright © 2011-2022 走看看