zoukankan      html  css  js  c++  java
  • Java中的异常处理机制

    本文 Java 机制的一概念 的目的在便若是忘 了这西 片文章

    1. 异常机制

    1.1

    异常机制是指当程序出现误后 制提供程序 退出错误执行发生 序的转移常处

    1.2

    传统的处理异常的办法是 ,函返回殊的结示出异常 通常个特 殊结是大约定称的 调用该函的程检查分析数返 样做有 如下-1 ,但如果返回 -1 个正时 就会码与常的爹在一起 调用的程序 来分户程的了解

    1.3 异常处理流程

    1.3.1 遇到错,方法,并不返一个,抛异常

    1.3.2 调用该方法的程也不会 而是理该异常 处理

     

    2 异常的分类

    2.1 异常的

    2.1.1

    异常的继承结类为 ThrowableError Exception 继承 ThrowableRuntimeException IOException Exception 具体 RuntimeException RuntimeException

    2.1.2

    Error RuntimeException 检查unchecked异常 成为checked

    2.2 每个类常的

    2.2.1 Error

    Error 述了 Java 内部 耗尽。应用程 序不该抛这种对象 (一般由虚 果出错误 ,除了尽力使程 序安退面是力的 在进行关注 Exception

    2.2.2 Exception 体系

    Exception 包括 RuntimeException 体系和其他 RuntimeException

    2.2.2.1 RuntimeException

    RuntimeException 型转 访访问空针等 RuntimeException 果出 RuntimeException一定是程员的 错查数避免访

    2.2.2.2 IOException

    这类异常一般是外部错误 ,例试图尾后读 并不是程序身的 错,而出现错误

    2.3 C++分类不同

    2.3.1

    Java RuntimeException 行时现的

    编译时现的错误并不是异 句话是为了决程序运时出现的的错

    2.3.2

    C++ logic_error Java RuntimeException 是等 runtime_error Java

    RuntimeException 类型的异

    3 异常使用方法

     

     

    3.1 声明

    3.1.1 throws

    3.1.2 为什方法抛出

    方法返回 设方明该法将抛 出异客户可以且不用编 现 异,那有合

    3.1.3 为什异常一定

    RuntimeException Error 以在任示的 ,一 旦出那么异常 检查 种 情:客户序员抛出常的函数 (库数的常由程序抛出 程序员

    使 throw Error RuntimeException 一定是程 要对程进行修 当于调试的一 种方才是心的 序应理已

    3.1.4

    类某子类法不能方法异常 有时类的 方法 但实却并不抛异常 的目为了 方便法时

    3.2 如何

    3.2.1 throw略)

    3.2.2 抛出

    对于有用类型 对象无意义 一 个异常对象的型是 ClassCastExceptio n那么个类名就是唯有用的 在 选择关键名能的类

    3.2.3

    异常函数 造函数 字符造函 数,将作为个异外的

    3.2.4

    创建 Java 内置都不能说明时候 要创的 异意的一有用的就是型名这信息 以不要在的设费精

    3.3 捕获

    如果处理 图形界面而言 会被输出 异常界面 的信回用

    Ы ?BR> 3.3.1 trycatch finally(略

    控制 try 块后一个会搜寻参数与型 相符它会 进入 catch

    ,并控制 catch 束对会停止

    3.3.1.1 捕获意语略)

    3.3.1.2 finally 的用法与常处略)

    3.3.2 异常

    对于 Java 有了垃圾并不 依然资 源需如文等资源

    3.3.3 应该抛出异常是在方 ? 原:捕道如 ,而递哪异常

    3.3.4 再次

    3.3.4.1 为什抛出异常

    在本能处分内处理要在所以再次抛 出异使的异处理异常

    3.3.4.2 异常

    对应与同 try 块的 catch 块将将进

    4 关于问题

    4.1 过度使

    使常很便所以编写代码 仅仅单单 的抛是不,对的错种错 , 增加。另,异

    4.2 将异分开

    对于 处理误的 加程部 的不时错使

    4.3 异常

    一般一有用的息就是 使用异的构

    作为 用异 getMessage() toString() printStackTrace()可以分别信息 类名和信息 后 一种的超集

    程序 JVM 就会抛常 比如ArrayIndexOutOfBoundsException public void demo1(){

    try{

    int a = 10/0;

    }catch(ArithmeticException ae){

    System.out.println(“ 术运算异:”+ae.getMessage());

    }catch(Exception e){

    System.out.println(“ 他异+e.getMessage());

    }

    }

     

     

    public void demo2(){

    String strList[] = {"a","b","c"};

    try{

    String str = strList[4].toString();

    }catch(ArrayIndexOutOfBoundsException ae){

    System.out.println(“ 组下标越:”+ae.getMessage());

    }catch(Exception e){

    System.out.println(“ 他异+e.getMessage());

    }

    }

    总之 Exception 有异常的.常被捉了 ,他就不会

    demo2()是出现了 ArrayIndexOutOfBounds Exception

    Exception 就不!

    那么次呢 ArrayIndexOutOfBoundsExcept ion 只是数组下标,它比 Exception 的仔,!

    如果不是 ArrayIndexOutOfBoundsEx ception Exception

     

     

    异常建一异常 进行 承于 Exception

     

    ,你写自

     

     

    class MyException extends Exception {

     

     

    //.....你做处理

     

     

    }

     

     

     

     

     

    当你在程使时候 使

     

     

    public static void main(String[] args) {

     

     

    try {

     

     

     

     

     

    } catch (MyException me) {// 己的异常

     

     

    } catch (Exception e) {//

     

     

    }

  • 相关阅读:
    log4Net使用
    VS Code入门
    用VS Code写Python
    C#(99):LINQ查询操作符实例
    C#(99):LINQ to Objects(2)
    spring mvc 配置对静态资源的访问
    EntLib 自动数据库连接字符串加密
    块级格式化上下文( Block formatting contexts)
    Entlib DAAB映射枚举类型
    js 继承
  • 原文地址:https://www.cnblogs.com/holly/p/2084067.html
Copyright © 2011-2022 走看看