zoukankan      html  css  js  c++  java
  • 异常概述

    异常处理------基本概念

    当出现程序无法控制的外部环境问题(用户提供文件不存在,文件内容损坏,网络不可用……)时,Java中2种异常处理异常

    00.在方式异常处理异常

    01.将异常抛给调用者,让调用者处理

    异常分类

    00.检查性异常:java.lang.Exception.

    01.运行期异常:java.lang.RuntimeException.

    02.错误java.lang.Error.

    顶层是java.lang.Throwable类。检查性异常,

    运行期异常.错误都是这个类的子孙类,java.lang.Exception和java.lang.Error继承自java.lang.Exception.

    检查性异常:

    程序正确,但因为外界在的环境条件不足引发,例如:用户错误及i/o问题——程序试图打开一个并不存在的远程socket端口或者是打开不存在的文件时,这不是程序本身的错误,而很可能是远程机器名字错误(用户拼音写错误)对商用软件系统,程序开发者必须考虑并处理这个问题,Java编译器强制要求处理这个类异常,如果不捕获这个异常,程序将不能被编译。

    运行期异常:

    意味着程序在bug,如数组越界,被除,入参不满足规范……这类异常需要更改程序被避免,java编译器强制要求处理这类异常。

    错误:一般很少见,也很难通过程序解决,它可能源于程序的bug,但一般更可能源于环境问题.如内存内存消耗殆尽,错误在程序中无需处理,而由运行环境来处理。

    try……catch:

    00.程序运行产生异常时,将从异常发生点中断程序并向外抛出异常信息。

    01.将异常抛给调用者,让调用者处理异常。

    异常处理:

    finally

    如果把finally块置try……catch语句后,finally块一般都会得到执行,它相当于一个万能的保险箱,即使前面的try块发生异常,而又没有对应异常的catch块,finally块将马上执行。

    以下情形,finally块不会被执行!

    00.finally块中发生了异常

    01.程序所在的线程死亡,

    02.在前面的代码块中用了System.exit();

    03.关闭cup。

                                                                                                                                                         

    java异常处理机制:

    保证程序出现异常情况以后,能继续执行后续代码!

  • 相关阅读:
    [ Algorithm ] N次方算法 N Square 动态规划解决
    [ Algorithm ] LCS 算法 动态规划解决
    sql server全文索引使用中的小坑
    关于join时显示no join predicate的那点事
    使用scvmm 2012的动态优化管理群集资源
    附加数据库后无法创建发布,error 2812 解决
    浅谈Virtual Machine Manager(SCVMM 2012) cluster 过载状态检测算法
    windows 2012 r2下安装sharepoint 2013错误解决
    sql server 2012 数据引擎任务调度算法解析(下)
    sql server 2012 数据引擎任务调度算法解析(上)
  • 原文地址:https://www.cnblogs.com/jmsjh/p/7440251.html
Copyright © 2011-2022 走看看